Home news Africa Live: Uganda withdraws Somalia troops, Zimbabwe president spots typo

Africa Live: Uganda withdraws Somalia troops, Zimbabwe president spots typo

This post was originally published here

Summary

  1. Uganda begins withdrawing peacekeepers from Somalia
  2. Zimbabwe’s new president spots spelling error on plaque
  3. DR Congo unrest forcing millions to flee – ‘outpacing Syria, Yemen and Iraq’
  4. Skeleton of Little Foot, an ancient human ancestor, unveiled
  5. French-speaking Africa pays tribute to Hallyday
  6. Cameroon village exodus after offensive against secessionists
  7. Mysterious deaths at Ghana college in Ashanti region
  8. Zanzibar-born artist wins prestigious Turner Prize
  9. Aids-related teen deaths rise in West and Central Africa

“],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