Skip to main content

Africa Live: Kenya threat to sue Google, Museveni approves law to scrap age limits

Summary

  1. Farmer threatens to sue tech giant over “fallen balloon” in Kenya
  2. Singers jailed for raping girls thank Tanzania’s leader for pardoning them
  3. Israel offers cash to migrants to leave
  4. Mauritania knocks a zero off currency
  5. Kenya’s leading betting firm cancels all local sports sponsorship
  6. Uganda’s president approves law which allows him to seek re-election
  7. Nigeria gunmen kill 16 on New Year’s Day
  8. Top Egypt rules that trading in Bitcoin is un-Islamic
  9. Egypt hangs prisoners
  10. Two killed climbing Table Mountain

“],area:[1,”

“,”

“],col:[2,””],legend:[1,”

“,”

“],param:[1,””],tr:[2,””],optgroup:u,option:u,caption:l,colgroup:l,tbody:l,tfoot:l,thead:l,td:c,th:c},f=[“circle”,”clipPath”,”defs”,”ellipse”,”g”,”image”,”line”,”linearGradient”,”mask”,”path”,”pattern”,”polygon”,”polyline”,”radialGradient”,”rect”,”stop”,”text”,”tspan”];f.forEach(function(e){d[e]=p,s[e]=!0}),e.exports=o}).call(t,n(2))},function(e,t,n){“use strict”;var o=n(16),r=o({INSERT_MARKUP:null,MOVE_EXISTING:null,REMOVE_NODE:null,SET_MARKUP:null,TEXT_CONTENT:null});e.exports=r},function(e,t,n){“use strict”;var o=n(27),r=n(96),a=n(81),i=function(e,t){e.textContent=t};o.canUseDOM&&(“textContent”in document.documentElement||(i=function(e,t){a(e,r(t))})),e.exports=i},function(e,t){“use strict”;function n(e){return r[e]}function o(e){return(“”+e).replace(a,n)}var r={“&”:”&”,”>”:”>”,””,l(e),l(n)):void 0)}}function p(e,n){n&&(“production”!==t.env.NODE_ENV&&se[e._tag]&&(“production”!==t.env.NODE_ENV?X(null==n.children&&null==n.dangerouslySetInnerHTML,”%s is a void element tag and must not have `children` or use `props.dangerouslySetInnerHTML`.%s”,e._tag,e._currentElement._owner?” Check the render method of “+e._currentElement._owner.getName()+”.”:””):void 0),null!=n.dangerouslySetInnerHTML&&(null!=n.children?”production”!==t.env.NODE_ENV?j(!1,”Can only set one of `children` or `props.dangerouslySetInnerHTML`.”):j(!1):void 0,”object”==typeof n.dangerouslySetInnerHTML&&te in n.dangerouslySetInnerHTML?void 0:”production”!==t.env.NODE_ENV?j(!1,”`props.dangerouslySetInnerHTML` must be in the form `{__html: …}`. Please visit https://fb.me/react-invariant-dangerously-set-inner-html for more information.”):j(!1)),”production”!==t.env.NODE_ENV&&(“production”!==t.env.NODE_ENV?X(null==n.innerHTML,”Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`.”):void 0,”production”!==t.env.NODE_ENV?X(!n.contentEditable||null==n.children,”A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional.”):void 0),null!=n.style&&”object”!=typeof n.style?”production”!==t.env.NODE_ENV?j(!1,”The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + ’em’}} when using JSX.%s”,o(e)):j(!1):void 0)}function d(e,n,o,r){“production”!==t.env.NODE_ENV&&(“production”!==t.env.NODE_ENV?X(“onScroll”!==n||W(“scroll”,!0),”This browser doesn’t support the `onScroll` event”):void 0);var a=k.findReactContainerForID(e);if(a){var i=a.nodeType===ne?a.ownerDocument:a;Q(n,i)}r.getReactMountReady().enqueue(f,{id:e,registrationName:n,listener:o})}function f(){var e=this;w.putListener(e.id,e.registrationName,e.listener)}function h(){var e=this;e._rootNodeID?void 0:”production”!==t.env.NODE_ENV?j(!1,”Must be mounted to trap events”):j(!1);var n=k.getNode(e._rootNodeID);switch(n?void 0:”production”!==t.env.NODE_ENV?j(!1,”trapBubbledEvent(…): Requires node to be rendered.”):j(!1),e._tag){case”iframe”:e._wrapperState.listeners=[w.trapBubbledEvent(O.topLevelTypes.topLoad,”load”,n)];break;case”video”:case”audio”:e._wrapperState.listeners=[];for(var o in re)re.hasOwnProperty(o)&&e._wrapperState.listeners.push(w.trapBubbledEvent(O.topLevelTypes[o],re[o],n));break;case”img”:e._wrapperState.listeners=[w.trapBubbledEvent(O.topLevelTypes.topError,”error”,n),w.trapBubbledEvent(O.topLevelTypes.topLoad,”load”,n)];break;case”form”:e._wrapperState.listeners=[w.trapBubbledEvent(O.topLevelTypes.topReset,”reset”,n),w.trapBubbledEvent(O.topLevelTypes.topSubmit,”submit”,n)]}}function m(){T.mountReadyWrapper(this)}function v(){P.postUpdateWrapper(this)}function g(e){ce.call(le,e)||(ue.test(e)?void 0:”production”!==t.env.NODE_ENV?j(!1,”Invalid tag: %s”,e):j(!1),le[e]=!0)}function y(e,t){e=U({},e);var n=e[z.ancestorInfoContextKey];return e[z.ancestorInfoContextKey]=z.updatedAncestorInfo(n,t._tag,t),e}function E(e,t){return e.indexOf(“-“)>=0||null!=t.is}function _(e){g(e),this._tag=e.toLowerCase(),this._renderedChildren=null,this._previousStyle=null,this._previousStyleCopy=null,this._rootNodeID=null,this._wrapperState=null,this._topLevelWrapper=null,this._nodeWithLegacyProperties=null,”production”!==t.env.NODE_ENV&&(this._unprocessedContextDev=null,this._processedContextDev=null)}var N,b=n(101),C=n(103),D=n(55),x=n(97),O=n(15),w=n(56),I=n(86),M=n(111),T=n(112),R=n(116),P=n(119),S=n(120),k=n(54),V=n(121),A=n(39),L=n(68),U=n(30),B=n(61),F=n(96),j=n(17),W=n(45),H=n(35),q=n(81),K=n(95),Y=n(124),z=n(82),X=n(23),G=w.deleteListener,Q=w.listenTo,$=w.registrationNameModules,J={string:!0,number:!0},Z=H({children:null}),ee=H({style:null}),te=H({__html:null}),ne=1;”production”!==t.env.NODE_ENV&&(N={props:{enumerable:!1,get:function(){var e=this._reactInternalComponent;return”production”!==t.env.NODE_ENV?X(!1,”ReactDOMComponent: Do not access .props of a DOM node; instead, recreate the props as `render` did originally or read the DOM properties/attributes directly from this node (e.g., this.refs.box.className).%s”,o(e)):void 0,e._currentElement.props}}});var oe={},re={topAbort:”abort”,topCanPlay:”canplay”,topCanPlayThrough:”canplaythrough”,topDurationChange:”durationchange”,topEmptied:”emptied”,topEncrypted:”encrypted”,topEnded:”ended”,topError:”error”,topLoadedData:”loadeddata”,topLoadedMetadata:”loadedmetadata”,topLoadStart:”loadstart”,topPause:”pause”,topPlay:”play”,topPlaying:”playing”,topProgress:”progress”,topRateChange:”ratechange”,topSeeked:”seeked”,topSeeking:”seeking”,topStalled:”stalled”,topSuspend:”suspend”,topTimeUpdate:”timeupdate”,topVolumeChange:”volumechange”,topWaiting:”waiting”},ae={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},ie={listing:!0,pre:!0,textarea:!0},se=U({menuitem:!0},ae),ue=/^[a-zA-Z][a-zA-Z:_.-d]*$/,le={},ce={}.hasOwnProperty;_.displayName=”ReactDOMComponent”,_.Mixin={construct:function(e){this._currentElement=e},mountComponent:function(e,n,o){this._rootNodeID=e;var r=this._currentElement.props;switch(this._tag){case”iframe”:case”img”:case”form”:case”video”:case”audio”:this._wrapperState={listeners:null},n.getReactMountReady().enqueue(h,this);break;case”button”:r=M.getNativeProps(this,r,o);break;case”input”:T.mountWrapper(this,r,o),r=T.getNativeProps(this,r,o);break;case”option”:R.mountWrapper(this,r,o),r=R.getNativeProps(this,r,o);break;case”select”:P.mountWrapper(this,r,o),r=P.getNativeProps(this,r,o),o=P.processChildContext(this,r,o);break;case”textarea”:S.mountWrapper(this,r,o),r=S.getNativeProps(this,r,o)}p(this,r),”production”!==t.env.NODE_ENV&&o[z.ancestorInfoContextKey]&&z(this._tag,this,o[z.ancestorInfoContextKey]),”production”!==t.env.NODE_ENV&&(this._unprocessedContextDev=o,this._processedContextDev=y(o,this),o=this._processedContextDev);var a;if(n.useCreateElement){var i=o[k.ownerDocumentContextKey],s=i.createElement(this._currentElement.type);x.setAttributeForID(s,this._rootNodeID),k.getID(s),this._updateDOMProperties({},r,n,s),this._createInitialChildren(n,r,o,s),a=s}else{var u=this._createOpenTagMarkupAndPutListeners(n,r),l=this._createContentMarkup(n,r,o);a=!l&&ae[this._tag]?u+”/>”:u+”>”+l+””+this._currentElement.type+”>”}switch(this._tag){case”input”:n.getReactMountReady().enqueue(m,this);case”button”:case”select”:case”textarea”:r.autoFocus&&n.getReactMountReady().enqueue(b.focusDOMComponent,this)}return a},_createOpenTagMarkupAndPutListeners:function(e,n){var o=” tried to unmount. Because of cross-browser quirks it is impossible to unmount some top-level components (eg , , and ) reliably and efficiently. To fix this, have a single top-level component that never unmounts render these elements.”,this._tag):j(!1)}if(this.unmountChildren(),w.deleteAllListeners(this._rootNodeID),I.unmountIDFromEnvironment(this._rootNodeID),this._rootNodeID=null,this._wrapperState=null,this._nodeWithLegacyProperties){var o=this._nodeWithLegacyProperties;o._reactInternalComponent=null,this._nodeWithLegacyProperties=null}},getPublicInstance:function(){if(!this._nodeWithLegacyProperties){var e=k.getNode(this._rootNodeID);e._reactInternalComponent=this,e.getDOMNode=r,e.isMounted=a,e.setState=i,e.replaceState=i,e.forceUpdate=i,e.setProps=s,e.replaceProps=u,”production”!==t.env.NODE_ENV&&B?Object.defineProperties(e,N):e.props=this._currentElement.props,this._nodeWithLegacyProperties=e}return this._nodeWithLegacyProperties}},A.measureMethods(_,”ReactDOMComponent”,{mountComponent:”mountComponent”,updateComponent:”updateComponent”}),U(_.prototype,_.Mixin,V.Mixin),e.exports=_}).call(t,n(2))},function(e,t,n){“use strict”;var o=n(54),r=n(85),a=n(102),i={componentDidMount:function(){this.props.autoFocus&&a(r(this))}},s={Mixin:i,focusDOMComponent:function(){a(o.getNode(this._rootNodeID))}};e.exports=s},function(e,t){“use strict”;function n(e){try{e.focus()}catch(e){}}e.exports=n},function(e,t,n){(function(t){“use strict”;var o=n(104),r=n(27),a=n(39),i=n(105),s=n(107),u=n(108),l=n(110),c=n(23),p=l(function(e){return u(e)}),d=!1,f=”cssFloat”;if(r.canUseDOM){var h=document.createElement(“div”).style;try{h.font=””}catch(e){d=!0}void 0===document.documentElement.style.cssFloat&&(f=”styleFloat”)}if(“production”!==t.env.NODE_ENV)var m=/^(?:webkit|moz|o)[A-Z]/,v=/;s*$/,g={},y={},E=function(e){g.hasOwnProperty(e)&&g[e]||(g[e]=!0,”production”!==t.env.NODE_ENV?c(!1,”Unsupported style property %s. Did you mean %s?”,e,i(e)):void 0)},_=function(e){g.hasOwnProperty(e)&&g[e]||(g[e]=!0,”production”!==t.env.NODE_ENV?c(!1,”Unsupported vendor-prefixed style property %s. Did you mean %s?”,e,e.charAt(0).toUpperCase()+e.slice(1)):void 0)},N=function(e,n){y.hasOwnProperty(n)&&y[n]||(y[n]=!0,”production”!==t.env.NODE_ENV?c(!1,’Style property values shouldn’t contain a semicolon. Try “%s: %s” instead.’,e,n.replace(v,””)):void 0)},b=function(e,t){e.indexOf(“-“)>-1?E(e):m.test(e)?_(e):v.test(t)&&N(e,t)};var C={createMarkupForStyles:function(e){var n=””;for(var o in e)if(e.hasOwnProperty(o)){var r=e[o];”production”!==t.env.NODE_ENV&&b(o,r),null!=r&&(n+=p(o)+”:”,n+=s(o,r)+”;”)}return n||null},setValueForStyles:function(e,n){var r=e.style;for(var a in n)if(n.hasOwnProperty(a)){“production”!==t.env.NODE_ENV&&b(a,n[a]);var i=s(a,n[a]);if(“float”===a&&(a=f),i)r[a]=i;else{var u=d&&o.shorthandPropertyExpansions[a];if(u)for(var l in u)r[l]=””;else r[a]=””}}}};a.measureMethods(C,”CSSPropertyOperations”,{setValueForStyles:”setValueForStyles”}),e.exports=C}).call(t,n(2))},function(e,t){“use strict”;function n(e,t){return e+t.charAt(0).toUpperCase()+t.substring(1)}var o={animationIterationCount:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,stopOpacity:!0,strokeDashoffset:!0,strokeOpacity:!0,strokeWidth:!0},r=[“Webkit”,”ms”,”Moz”,”O”];Object.keys(o).forEach(function(e){r.forEach(function(t){o[n(t,e)]=o[e]})});var a={background:{backgroundAttachment:!0,backgroundColor:!0,backgroundImage:!0,backgroundPositionX:!0,backgroundPositionY:!0,backgroundRepeat:!0},backgroundPosition:{backgroundPositionX:!0,backgroundPositionY:!0},border:{borderWidth:!0,borderStyle:!0,borderColor:!0},borderBottom:{borderBottomWidth:!0,borderBottomStyle:!0,borderBottomColor:!0},borderLeft:{borderLeftWidth:!0,borderLeftStyle:!0,borderLeftColor:!0},borderRight:{borderRightWidth:!0,borderRightStyle:!0,borderRightColor:!0},borderTop:{borderTopWidth:!0,borderTopStyle:!0,borderTopColor:!0},font:{fontStyle:!0,fontVariant:!0,fontWeight:!0,fontSize:!0,lineHeight:!0,fontFamily:!0},outline:{outlineWidth:!0,outlineStyle:!0,outlineColor:!0}},i={isUnitlessNumber:o,shorthandPropertyExpansions:a};e.exports=i},function(e,t,n){“use strict”;function o(e){return r(e.replace(a,”ms-“))}var r=n(106),a=/^-ms-/;e.exports=o},function(e,t){“use strict”;function n(e){return e.replace(o,function(e,t){return t.toUpperCase()})}var o=/-(.)/g;e.exports=n},function(e,t,n){“use strict”;function o(e,t){var n=null==t||”boolean”==typeof t||””===t;if(n)return””;var o=isNaN(t);return o||0===t||a.hasOwnProperty(e)&&a[e]?””+t:(“string”==typeof t&&(t=t.trim()),t+”px”)}var r=n(104),a=r.isUnitlessNumber;e.exports=o},function(e,t,n){“use strict”;function o(e){return r(e).replace(a,”-ms-“);
}var r=n(109),a=/^ms-/;e.exports=o},function(e,t){“use strict”;function n(e){return e.replace(o,”-$1″).toLowerCase()}var o=/([A-Z])/g;e.exports=n},function(e,t){“use strict”;function n(e){var t={};return function(n){return t.hasOwnProperty(n)||(t[n]=e.call(this,n)),t[n]}}e.exports=n},function(e,t){“use strict”;var n={onClick:!0,onDoubleClick:!0,onMouseDown:!0,onMouseMove:!0,onMouseUp:!0,onClickCapture:!0,onDoubleClickCapture:!0,onMouseDownCapture:!0,onMouseMoveCapture:!0,onMouseUpCapture:!0},o={getNativeProps:function(e,t,o){if(!t.disabled)return t;var r={};for(var a in t)t.hasOwnProperty(a)&&!n[a]&&(r[a]=t[a]);return r}};e.exports=o},function(e,t,n){(function(t){“use strict”;function o(){this._rootNodeID&&d.updateWrapper(this)}function r(e){var n=this._currentElement.props,r=i.executeOnChange(n,e);u.asap(o,this);var a=n.name;if(“radio”===n.type&&null!=a){for(var l=s.getNode(this._rootNodeID),d=l;d.parentNode;)d=d.parentNode;for(var f=d.querySelectorAll(“input[name=”+JSON.stringify(“”+a)+’][type=”radio”]’),h=0;h>”}var y=n(60),E=n(77),_=n(24),N=n(115),b=”>”,C={array:r(“array”),bool:r(“boolean”),func:r(“function”),number:r(“number”),object:r(“object”),string:r(“string”),any:a(),arrayOf:i,element:s(),instanceOf:u,node:d(),objectOf:c,oneOf:l,oneOfType:p,shape:f};e.exports=C},function(e,t){“use strict”;function n(e){var t=e&&(o&&e[o]||e[r]);if(“function”==typeof t)return t}var o=”function”==typeof Symbol&&Symbol.iterator,r=”@@iterator”;e.exports=n},function(e,t,n){(function(t){“use strict”;var o=n(117),r=n(119),a=n(30),i=n(23),s=r.valueContextKey,u={mountWrapper:function(e,n,o){“production”!==t.env.NODE_ENV&&(“production”!==t.env.NODE_ENV?i(null==n.selected,”Use the `defaultValue` or `value` props on
Go to Source