Skip to content

Instantly share code, notes, and snippets.

@zed9h
Last active August 29, 2015 14:26
Show Gist options
  • Save zed9h/6f387d15e61472c3e0e6 to your computer and use it in GitHub Desktop.
Save zed9h/6f387d15e61472c3e0e6 to your computer and use it in GitHub Desktop.
world map with the last decades migration between countries (UN data https://docs.google.com/spreadsheets/d/1_lFkPHLNK8fKkqTc-3Ytgz9IIP55Kmn1RNNl3TquG44/edit#gid=1209937416)
.ammapAlert
{
display:table-cell;
vertical-align:middle;
text-align:center;
font-family:verdana,helvetica,arial,sans-serif;
font-size:12px;
color:#CC0000;
}
.ammapDescriptionWindow
{
font-size:11px;
font-family:verdana,helvetica,arial,sans-serif;
background-color:#FFFFFF;
border-style:solid;
border-color:#DADADA;
border-width:1px;
color:#000000;
padding:8px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.ammapDescriptionTitle
{
font-size:12px;
font-weight:bold;
font-family:verdana,helvetica,arial,sans-serif;
padding-bottom:5px;
}
.ammapDescriptionWindowCloseButton
{
}
.ammapObjectList ul
{
padding-left:20px;
list-style:square outside;
color:#999999;
font-family:verdana,helvetica,arial,sans-serif;
font-size: 12px;
}
.ammapObjectList ul ul
{
padding-left:14px;
}
.ammapObjectList a
{
color:#000000;
}
.ammapObjectList a
{
color:#000000;
text-decoration:none;
display:block;
padding:2px;
}
.ammapObjectList a:hover
{
color:#CC0000;
text-decoration:none;
background:#FFFFFF;
cursor:pointer;
display:block;
}
.ammapDescriptionText
{
overflow: auto;
}
.amChartsPlotArea
{
}
(function(){var d;window.AmCharts?d=window.AmCharts:(d={},window.AmCharts=d,d.themes={},d.maps={},d.inheriting={},d.charts=[],d.onReadyArray=[],d.useUTC=!1,d.updateRate=30,d.uid=0,d.lang={},d.translations={},d.mapTranslations={},d.windows={},d.initHandlers=[]);d.Class=function(a){var b=function(){arguments[0]!==d.inheriting&&(this.events={},this.construct.apply(this,arguments))};a.inherits?(b.prototype=new a.inherits(d.inheriting),b.base=a.inherits.prototype,delete a.inherits):(b.prototype.createEvents=
function(){for(var a=0,b=arguments.length;a<b;a++)this.events[arguments[a]]=[]},b.prototype.listenTo=function(a,b,c){this.removeListener(a,b,c);a.events[b].push({handler:c,scope:this})},b.prototype.addListener=function(a,b,c){this.removeListener(this,a,b);this.events[a].push({handler:b,scope:c})},b.prototype.removeListener=function(a,b,c){if(a&&a.events)for(a=a.events[b],b=a.length-1;0<=b;b--)a[b].handler===c&&a.splice(b,1)},b.prototype.fire=function(a,b){for(var c=this.events[a],d=0,k=c.length;d<
k;d++){var l=c[d];l.handler.call(l.scope,b)}});for(var c in a)b.prototype[c]=a[c];return b};d.addChart=function(a){d.updateInt||(d.updateInt=setInterval(function(){d.update()},Math.round(1E3/d.updateRate)));d.charts.push(a)};d.removeChart=function(a){for(var b=d.charts,c=b.length-1;0<=c;c--)b[c]==a&&b.splice(c,1);0===b.length&&d.updateInt&&(clearInterval(d.updateInt),d.updateInt=NaN)};d.isModern=!0;d.getIEVersion=function(){var a=0,b,c;"Microsoft Internet Explorer"==navigator.appName&&(b=navigator.userAgent,
c=/MSIE ([0-9]{1,}[.0-9]{0,})/,null!==c.exec(b)&&(a=parseFloat(RegExp.$1)));return a};d.applyLang=function(a,b){var c=d.translations;b.dayNames=d.extend({},d.dayNames);b.shortDayNames=d.extend({},d.shortDayNames);b.monthNames=d.extend({},d.monthNames);b.shortMonthNames=d.extend({},d.shortMonthNames);c&&(c=c[a])&&(d.lang=c,c.monthNames&&(b.dayNames=d.extend({},c.dayNames),b.shortDayNames=d.extend({},c.shortDayNames),b.monthNames=d.extend({},c.monthNames),b.shortMonthNames=d.extend({},c.shortMonthNames)))};
d.IEversion=d.getIEVersion();9>d.IEversion&&0<d.IEversion&&(d.isModern=!1,d.isIE=!0);d.dx=0;d.dy=0;if(document.addEventListener||window.opera)d.isNN=!0,d.isIE=!1,d.dx=.5,d.dy=.5;document.attachEvent&&(d.isNN=!1,d.isIE=!0,d.isModern||(d.dx=0,d.dy=0));window.chrome&&(d.chrome=!0);d.handleMouseUp=function(a){for(var b=d.charts,c=0;c<b.length;c++){var h=b[c];h&&h.handleReleaseOutside&&h.handleReleaseOutside(a)}};d.handleMouseMove=function(a){for(var b=d.charts,c=0;c<b.length;c++){var h=b[c];h&&h.handleMouseMove&&
h.handleMouseMove(a)}};d.handleWheel=function(a){for(var b=d.charts,c=0;c<b.length;c++){var h=b[c];if(h&&h.mouseIsOver){h.mouseWheelScrollEnabled||h.mouseWheelZoomEnabled?h.handleWheel&&h.handleWheel(a):a.stopPropagation&&a.stopPropagation();break}}};d.resetMouseOver=function(){for(var a=d.charts,b=0;b<a.length;b++){var c=a[b];c&&(c.mouseIsOver=!1)}};d.ready=function(a){d.onReadyArray.push(a)};d.handleLoad=function(){d.isReady=!0;for(var a=d.onReadyArray,b=0;b<a.length;b++){var c=a[b];isNaN(d.processDelay)?
c():setTimeout(c,d.processDelay*b)}};d.addInitHandler=function(a,b){d.initHandlers.push({method:a,types:b})};d.callInitHandler=function(a){var b=d.initHandlers;if(d.initHandlers)for(var c=0;c<b.length;c++){var h=b[c];h.types?d.isInArray(h.types,a.type)&&h.method(a):h.method(a)}};d.getUniqueId=function(){d.uid++;return"AmChartsEl-"+d.uid};d.isNN&&(document.addEventListener("mousemove",d.handleMouseMove,!0),document.addEventListener("mouseup",d.handleMouseUp,!0),window.addEventListener("load",d.handleLoad,
!0),window.addEventListener("DOMMouseScroll",d.handleWheel,!0),document.addEventListener("mousewheel",d.handleWheel,!0));d.isIE&&(document.attachEvent("onmousemove",d.handleMouseMove),document.attachEvent("onmouseup",d.handleMouseUp),window.attachEvent("onload",d.handleLoad));d.clear=function(){var a=d.charts;if(a)for(var b=a.length-1;0<=b;b--)a[b].clear();d.updateInt&&clearInterval(d.updateInt);d.charts=[];d.isNN&&(document.removeEventListener("mousemove",d.handleMouseMove,!0),document.removeEventListener("mouseup",
d.handleMouseUp,!0),window.removeEventListener("load",d.handleLoad,!0),window.removeEventListener("DOMMouseScroll",d.handleWheel,!0),document.removeEventListener("mousewheel",d.handleWheel,!0));d.isIE&&(document.detachEvent("onmousemove",d.handleMouseMove),document.detachEvent("onmouseup",d.handleMouseUp),window.detachEvent("onload",d.handleLoad))};d.makeChart=function(a,b,c){var h=b.type,f=b.theme;d.isString(f)&&(f=d.themes[f],b.theme=f);var e;switch(h){case "serial":e=new d.AmSerialChart(f);break;
case "xy":e=new d.AmXYChart(f);break;case "pie":e=new d.AmPieChart(f);break;case "radar":e=new d.AmRadarChart(f);break;case "gauge":e=new d.AmAngularGauge(f);break;case "funnel":e=new d.AmFunnelChart(f);break;case "map":e=new d.AmMap(f);break;case "stock":e=new d.AmStockChart(f);break;case "gantt":e=new d.AmGanttChart(f)}d.extend(e,b);if(b.listeners)for(var g in b.listeners)h=b.listeners[g],e.addListener(h.event,h.method);d.isReady?isNaN(c)?e.write(a):setTimeout(function(){d.realWrite(e,a)},c):d.ready(function(){isNaN(c)?
e.write(a):setTimeout(function(){d.realWrite(e,a)},c)});return e};d.realWrite=function(a,b){a.write(b)};d.updateCount=0;d.validateAt=Math.round(d.updateRate/5);d.update=function(){var a=d.charts;d.updateCount++;var b=!1;d.updateCount==d.validateAt&&(b=!0,d.updateCount=0);if(a)for(var c=0;c<a.length;c++)a[c].update&&a[c].update(),b&&a[c].autoResize&&a[c].validateSize&&a[c].validateSize()};d.bezierX=3;d.bezierY=6})();(function(){var d=window.AmCharts;d.toBoolean=function(a,b){if(void 0===a)return b;switch(String(a).toLowerCase()){case "true":case "yes":case "1":return!0;case "false":case "no":case "0":case null:return!1;default:return Boolean(a)}};d.removeFromArray=function(a,b){var c;if(void 0!==b&&void 0!==a)for(c=a.length-1;0<=c;c--)a[c]==b&&a.splice(c,1)};d.getPath=function(){var a=document.getElementsByTagName("script");if(a)for(var b=0;b<a.length;b++){var c=a[b].src;if(-1!==c.search(/\/(amcharts|ammap)\.js/))return c.replace(/\/(amcharts|ammap)\.js.*/,
"/")}};d.normalizeUrl=function(a){return""!==a&&-1===a.search(/\/$/)?a+"/":a};d.isAbsolute=function(a){return 0===a.search(/^http[s]?:|^\//)};d.isInArray=function(a,b){for(var c=0;c<a.length;c++)if(a[c]==b)return!0;return!1};d.getDecimals=function(a){var b=0;isNaN(a)||(a=String(a),-1!=a.indexOf("e-")?b=Number(a.split("-")[1]):-1!=a.indexOf(".")&&(b=a.split(".")[1].length));return b};d.wordwrap=function(a,b,c,h){var f,e,g,k;a+="";if(1>b)return a;f=-1;for(a=(k=a.split(/\r\n|\n|\r/)).length;++f<a;k[f]+=
g){g=k[f];for(k[f]="";g.length>b;k[f]+=d.trim(g.slice(0,e))+((g=g.slice(e)).length?c:""))e=2==h||(e=g.slice(0,b+1).match(/\S*(\s)?$/))[1]?b:e.input.length-e[0].length||1==h&&b||e.input.length+(e=g.slice(b).match(/^\S*/))[0].length;g=d.trim(g)}return k.join(h)};d.trim=function(a){return a.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")};d.wrappedText=function(a,b,c,h,f,e,g,k){var l=d.text(a,b,c,h,f,e,g);if(l){var m=l.getBBox();if(m.width>k){var n="\n";d.isModern||(n="<br>");k=Math.floor(k/(m.width/
b.length));2<k&&(k-=2);b=d.wordwrap(b,k,n,!0);l.remove();l=d.text(a,b,c,h,f,e,g)}}return l};d.getStyle=function(a,b){var c="";document.defaultView&&document.defaultView.getComputedStyle?c=document.defaultView.getComputedStyle(a,"").getPropertyValue(b):a.currentStyle&&(b=b.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),c=a.currentStyle[b]);return c};d.removePx=function(a){if(void 0!==a)return Number(a.substring(0,a.length-2))};d.getURL=function(a,b){if(a)if("_self"!=b&&b)if("_top"==b&&window.top)window.top.location.href=
a;else if("_parent"==b&&window.parent)window.parent.location.href=a;else if("_blank"==b)window.open(a);else{var c=document.getElementsByName(b)[0];c?c.src=a:(c=d.windows[b])?c.opener&&!c.opener.closed?c.location.href=a:d.windows[b]=window.open(a):d.windows[b]=window.open(a)}else window.location.href=a};d.ifArray=function(a){return a&&"object"==typeof a&&0<a.length?!0:!1};d.callMethod=function(a,b){var c;for(c=0;c<b.length;c++){var h=b[c];if(h){if(h[a])h[a]();var d=h.length;if(0<d){var e;for(e=0;e<
d;e++){var g=h[e];if(g&&g[a])g[a]()}}}}};d.toNumber=function(a){return"number"==typeof a?a:Number(String(a).replace(/[^0-9\-.]+/g,""))};d.toColor=function(a){if(""!==a&&void 0!==a)if(-1!=a.indexOf(",")){a=a.split(",");var b;for(b=0;b<a.length;b++){var c=a[b].substring(a[b].length-6,a[b].length);a[b]="#"+c}}else a=a.substring(a.length-6,a.length),a="#"+a;return a};d.toCoordinate=function(a,b,c){var h;void 0!==a&&(a=String(a),c&&c<b&&(b=c),h=Number(a),-1!=a.indexOf("!")&&(h=b-Number(a.substr(1))),-1!=
a.indexOf("%")&&(h=b*Number(a.substr(0,a.length-1))/100));return h};d.fitToBounds=function(a,b,c){a<b&&(a=b);a>c&&(a=c);return a};d.isDefined=function(a){return void 0===a?!1:!0};d.stripNumbers=function(a){return a.replace(/[0-9]+/g,"")};d.roundTo=function(a,b){if(0>b)return a;var c=Math.pow(10,b);return Math.round(a*c)/c};d.toFixed=function(a,b){var c=String(Math.round(a*Math.pow(10,b)));if(0<b){var h=c.length;if(h<b){var d;for(d=0;d<b-h;d++)c="0"+c}h=c.substring(0,c.length-b);""===h&&(h=0);return h+
"."+c.substring(c.length-b,c.length)}return String(c)};d.formatDuration=function(a,b,c,h,f,e){var g=d.intervals,k=e.decimalSeparator;if(a>=g[b].contains){var l=a-Math.floor(a/g[b].contains)*g[b].contains;"ss"==b?(l=d.formatNumber(l,e),1==l.split(k)[0].length&&(l="0"+l)):l=d.roundTo(l,e.precision);("mm"==b||"hh"==b)&&10>l&&(l="0"+l);c=l+""+h[b]+""+c;a=Math.floor(a/g[b].contains);b=g[b].nextInterval;return d.formatDuration(a,b,c,h,f,e)}"ss"==b&&(a=d.formatNumber(a,e),1==a.split(k)[0].length&&(a="0"+
a));("mm"==b||"hh"==b)&&10>a&&(a="0"+a);c=a+""+h[b]+""+c;if(g[f].count>g[b].count)for(a=g[b].count;a<g[f].count;a++)b=g[b].nextInterval,"ss"==b||"mm"==b||"hh"==b?c="00"+h[b]+""+c:"DD"==b&&(c="0"+h[b]+""+c);":"==c.charAt(c.length-1)&&(c=c.substring(0,c.length-1));return c};d.formatNumber=function(a,b,c,h,f){a=d.roundTo(a,b.precision);isNaN(c)&&(c=b.precision);var e=b.decimalSeparator;b=b.thousandsSeparator;var g;g=0>a?"-":"";a=Math.abs(a);var k=String(a),l=!1;-1!=k.indexOf("e")&&(l=!0);0<=c&&!l&&(k=
d.toFixed(a,c));var m="";if(l)m=k;else{var k=k.split("."),l=String(k[0]),n;for(n=l.length;0<=n;n-=3)m=n!=l.length?0!==n?l.substring(n-3,n)+b+m:l.substring(n-3,n)+m:l.substring(n-3,n);void 0!==k[1]&&(m=m+e+k[1]);void 0!==c&&0<c&&"0"!=m&&(m=d.addZeroes(m,e,c))}m=g+m;""===g&&!0===h&&0!==a&&(m="+"+m);!0===f&&(m+="%");return m};d.addZeroes=function(a,b,c){a=a.split(b);void 0===a[1]&&0<c&&(a[1]="0");return a[1].length<c?(a[1]+="0",d.addZeroes(a[0]+b+a[1],b,c)):void 0!==a[1]?a[0]+b+a[1]:a[0]};d.scientificToNormal=
function(a){var b;a=String(a).split("e");var c;if("-"==a[1].substr(0,1)){b="0.";for(c=0;c<Math.abs(Number(a[1]))-1;c++)b+="0";b+=a[0].split(".").join("")}else{var h=0;b=a[0].split(".");b[1]&&(h=b[1].length);b=a[0].split(".").join("");for(c=0;c<Math.abs(Number(a[1]))-h;c++)b+="0"}return b};d.toScientific=function(a,b){if(0===a)return"0";var c=Math.floor(Math.log(Math.abs(a))*Math.LOG10E),h=String(h).split(".").join(b);return String(h)+"e"+c};d.randomColor=function(){return"#"+("00000"+(16777216*Math.random()<<
0).toString(16)).substr(-6)};d.hitTest=function(a,b,c){var h=!1,f=a.x,e=a.x+a.width,g=a.y,k=a.y+a.height,l=d.isInRectangle;h||(h=l(f,g,b));h||(h=l(f,k,b));h||(h=l(e,g,b));h||(h=l(e,k,b));h||!0===c||(h=d.hitTest(b,a,!0));return h};d.isInRectangle=function(a,b,c){return a>=c.x-5&&a<=c.x+c.width+5&&b>=c.y-5&&b<=c.y+c.height+5?!0:!1};d.isPercents=function(a){if(-1!=String(a).indexOf("%"))return!0};d.findPosX=function(a){var b=a,c=a.offsetLeft;if(a.offsetParent){for(;a=a.offsetParent;)c+=a.offsetLeft;
for(;(b=b.parentNode)&&b!=document.body;)c-=b.scrollLeft||0}return c};d.findPosY=function(a){var b=a,c=a.offsetTop;if(a.offsetParent){for(;a=a.offsetParent;)c+=a.offsetTop;for(;(b=b.parentNode)&&b!=document.body;)c-=b.scrollTop||0}return c};d.findIfFixed=function(a){if(a.offsetParent)for(;a=a.offsetParent;)if("fixed"==d.getStyle(a,"position"))return!0;return!1};d.findIfAuto=function(a){return a.style&&"auto"==d.getStyle(a,"overflow")?!0:a.parentNode?d.findIfAuto(a.parentNode):!1};d.findScrollLeft=
function(a,b){a.scrollLeft&&(b+=a.scrollLeft);return a.parentNode?d.findScrollLeft(a.parentNode,b):b};d.findScrollTop=function(a,b){a.scrollTop&&(b+=a.scrollTop);return a.parentNode?d.findScrollTop(a.parentNode,b):b};d.formatValue=function(a,b,c,h,f,e,g,k){if(b){void 0===f&&(f="");var l;for(l=0;l<c.length;l++){var m=c[l],n=b[m];void 0!==n&&(n=e?d.addPrefix(n,k,g,h):d.formatNumber(n,h),a=a.replace(new RegExp("\\[\\["+f+""+m+"\\]\\]","g"),n))}}return a};d.formatDataContextValue=function(a,b){if(a){var c=
a.match(/\[\[.*?\]\]/g),h;for(h=0;h<c.length;h++){var d=c[h],d=d.substr(2,d.length-4);void 0!==b[d]&&(a=a.replace(new RegExp("\\[\\["+d+"\\]\\]","g"),b[d]))}}return a};d.massReplace=function(a,b){for(var c in b)if(b.hasOwnProperty(c)){var d=b[c];void 0===d&&(d="");a=a.replace(c,d)}return a};d.cleanFromEmpty=function(a){return a.replace(/\[\[[^\]]*\]\]/g,"")};d.addPrefix=function(a,b,c,h,f){var e=d.formatNumber(a,h),g="",k,l,m;if(0===a)return"0";0>a&&(g="-");a=Math.abs(a);if(1<a)for(k=b.length-1;-1<
k;k--){if(a>=b[k].number&&(l=a/b[k].number,m=Number(h.precision),1>m&&(m=1),c=d.roundTo(l,m),m=d.formatNumber(c,{precision:-1,decimalSeparator:h.decimalSeparator,thousandsSeparator:h.thousandsSeparator}),!f||l==c)){e=g+""+m+""+b[k].prefix;break}}else for(k=0;k<c.length;k++)if(a<=c[k].number){l=a/c[k].number;m=Math.abs(Math.round(Math.log(l)*Math.LOG10E));l=d.roundTo(l,m);e=g+""+l+""+c[k].prefix;break}return e};d.remove=function(a){a&&a.remove()};d.getEffect=function(a){">"==a&&(a="easeOutSine");"<"==
a&&(a="easeInSine");"elastic"==a&&(a="easeOutElastic");return a};d.getObjById=function(a,b){var c,d;for(d=0;d<a.length;d++){var f=a[d];f.id==b&&(c=f)}return c};d.applyTheme=function(a,b,c){b||(b=d.theme);b&&b[c]&&d.extend(a,b[c])};d.isString=function(a){return"string"==typeof a?!0:!1};d.extend=function(a,b,c){var d;a||(a={});for(d in b)c?a.hasOwnProperty(d)||(a[d]=b[d]):a[d]=b[d];return a};d.copyProperties=function(a,b){for(var c in a)a.hasOwnProperty(c)&&"events"!=c&&void 0!==a[c]&&"function"!=typeof a[c]&&
"cname"!=c&&(b[c]=a[c])};d.processObject=function(a,b,c,h){if(!1===a instanceof b&&(a=h?d.extend(new b(c),a):d.extend(a,new b(c),!0),a.listeners))for(var f in a.listeners)b=a.listeners[f],a.addListener(b.event,b.method);return a};d.fixNewLines=function(a){var b=RegExp("\\n","g");a&&(a=a.replace(b,"<br />"));return a};d.fixBrakes=function(a){if(d.isModern){var b=RegExp("<br>","g");a&&(a=a.replace(b,"\n"))}else a=d.fixNewLines(a);return a};d.deleteObject=function(a,b){if(a){if(void 0===b||null===b)b=
20;if(0!==b)if("[object Array]"===Object.prototype.toString.call(a))for(var c=0;c<a.length;c++)d.deleteObject(a[c],b-1),a[c]=null;else if(a&&!a.tagName)try{for(c in a)a[c]&&("object"==typeof a[c]&&d.deleteObject(a[c],b-1),"function"!=typeof a[c]&&(a[c]=null))}catch(h){}}};d.bounce=function(a,b,c,d,f){return(b/=f)<1/2.75?7.5625*d*b*b+c:b<2/2.75?d*(7.5625*(b-=1.5/2.75)*b+.75)+c:b<2.5/2.75?d*(7.5625*(b-=2.25/2.75)*b+.9375)+c:d*(7.5625*(b-=2.625/2.75)*b+.984375)+c};d.easeInSine=function(a,b,c,d,f){return-d*
Math.cos(b/f*(Math.PI/2))+d+c};d.easeOutSine=function(a,b,c,d,f){return d*Math.sin(b/f*(Math.PI/2))+c};d.easeOutElastic=function(a,b,c,d,f){a=1.70158;var e=0,g=d;if(0===b)return c;if(1==(b/=f))return c+d;e||(e=.3*f);g<Math.abs(d)?(g=d,a=e/4):a=e/(2*Math.PI)*Math.asin(d/g);return g*Math.pow(2,-10*b)*Math.sin(2*(b*f-a)*Math.PI/e)+d+c};d.fixStepE=function(a){a=a.toExponential(0).split("e");var b=Number(a[1]);9==Number(a[0])&&b++;return d.generateNumber(1,b)};d.generateNumber=function(a,b){var c="",d;
d=0>b?Math.abs(b)-1:Math.abs(b);var f;for(f=0;f<d;f++)c+="0";return 0>b?Number("0."+c+String(a)):Number(String(a)+c)};d.setCN=function(a,b,c,d){if(a.addClassNames&&b&&(b=b.node)&&c){var f=b.getAttribute("class");a=a.classNamePrefix+"-";d&&(a="");f?b.setAttribute("class",f+" "+a+c):b.setAttribute("class",a+c)}};d.parseDefs=function(a,b){for(var c in a){var h=typeof a[c];if(0<a[c].length&&"object"==h)for(var f=0;f<a[c].length;f++)h=document.createElementNS(d.SVG_NS,c),b.appendChild(h),d.parseDefs(a[c][f],
h);else"object"==h?(h=document.createElementNS(d.SVG_NS,c),b.appendChild(h),d.parseDefs(a[c],h)):b.setAttribute(c,a[c])}}})();(function(){var d=window.AmCharts;d.AmDraw=d.Class({construct:function(a,b,c,h){d.SVG_NS="http://www.w3.org/2000/svg";d.SVG_XLINK="http://www.w3.org/1999/xlink";d.hasSVG=!!document.createElementNS&&!!document.createElementNS(d.SVG_NS,"svg").createSVGRect;1>b&&(b=10);1>c&&(c=10);this.div=a;this.width=b;this.height=c;this.rBin=document.createElement("div");d.hasSVG?(d.SVG=!0,b=this.createSvgElement("svg"),a.appendChild(b),this.container=b,this.addDefs(h),this.R=new d.SVGRenderer(this)):d.isIE&&d.VMLRenderer&&
(d.VML=!0,d.vmlStyleSheet||(document.namespaces.add("amvml","urn:schemas-microsoft-com:vml"),31>document.styleSheets.length?(b=document.createStyleSheet(),b.addRule(".amvml","behavior:url(#default#VML); display:inline-block; antialias:true"),d.vmlStyleSheet=b):document.styleSheets[0].addRule(".amvml","behavior:url(#default#VML); display:inline-block; antialias:true")),this.container=a,this.R=new d.VMLRenderer(this,h),this.R.disableSelection(a))},createSvgElement:function(a){return document.createElementNS(d.SVG_NS,
a)},circle:function(a,b,c,h){var f=new d.AmDObject("circle",this);f.attr({r:c,cx:a,cy:b});this.addToContainer(f.node,h);return f},ellipse:function(a,b,c,h,f){var e=new d.AmDObject("ellipse",this);e.attr({rx:c,ry:h,cx:a,cy:b});this.addToContainer(e.node,f);return e},setSize:function(a,b){0<a&&0<b&&(this.container.style.width=a+"px",this.container.style.height=b+"px")},rect:function(a,b,c,h,f,e,g){var k=new d.AmDObject("rect",this);d.VML&&(f=Math.round(100*f/Math.min(c,h)),c+=2*e,h+=2*e,k.bw=e,k.node.style.marginLeft=
-e,k.node.style.marginTop=-e);1>c&&(c=1);1>h&&(h=1);k.attr({x:a,y:b,width:c,height:h,rx:f,ry:f,"stroke-width":e});this.addToContainer(k.node,g);return k},image:function(a,b,c,h,f,e){var g=new d.AmDObject("image",this);g.attr({x:b,y:c,width:h,height:f});this.R.path(g,a);this.addToContainer(g.node,e);return g},addToContainer:function(a,b){b||(b=this.container);b.appendChild(a)},text:function(a,b,c){return this.R.text(a,b,c)},path:function(a,b,c,h){var f=new d.AmDObject("path",this);h||(h="100,100");
f.attr({cs:h});c?f.attr({dd:a}):f.attr({d:a});this.addToContainer(f.node,b);return f},set:function(a){return this.R.set(a)},remove:function(a){if(a){var b=this.rBin;b.appendChild(a);b.innerHTML=""}},renderFix:function(){var a=this.container,b=a.style;b.top="0px";b.left="0px";var c=a.getBoundingClientRect(),a=c.left-Math.round(c.left),c=c.top-Math.round(c.top);a&&(b.left=a+"px");c&&(b.top=c+"px")},update:function(){this.R.update()},addDefs:function(a){if(d.hasSVG){var b=this.createSvgElement("desc"),
c=this.container;c.setAttribute("version","1.1");c.style.position="absolute";this.setSize(this.width,this.height);d.rtl&&(c.setAttribute("direction","rtl"),c.style.left="auto",c.style.right="0px");a.addCodeCredits&&b.appendChild(document.createTextNode("JavaScript chart by amCharts "+a.version));c.appendChild(b);a.defs&&(b=this.createSvgElement("defs"),c.appendChild(b),d.parseDefs(a.defs,b),this.defs=b)}}})})();(function(){var d=window.AmCharts;d.AmDObject=d.Class({construct:function(a,b){this.D=b;this.R=b.R;this.node=this.R.create(this,a);this.y=this.x=0;this.scale=1},attr:function(a){this.R.attr(this,a);return this},getAttr:function(a){return this.node.getAttribute(a)},setAttr:function(a,b){this.R.setAttr(this,a,b);return this},clipRect:function(a,b,c,d){this.R.clipRect(this,a,b,c,d)},translate:function(a,b,c,d){d||(a=Math.round(a),b=Math.round(b));this.R.move(this,a,b,c);this.x=a;this.y=b;this.scale=
c;this.angle&&this.rotate(this.angle)},rotate:function(a,b){this.R.rotate(this,a,b);this.angle=a},animate:function(a,b,c){for(var h in a)if(a.hasOwnProperty(h)){var f=h,e=a[h];c=d.getEffect(c);this.R.animate(this,f,e,b,c)}},push:function(a){if(a){var b=this.node;b.appendChild(a.node);var c=a.clipPath;c&&b.appendChild(c);(a=a.grad)&&b.appendChild(a)}},text:function(a){this.R.setText(this,a)},remove:function(){this.R.remove(this)},clear:function(){var a=this.node;if(a.hasChildNodes())for(;1<=a.childNodes.length;)a.removeChild(a.firstChild)},
hide:function(){this.setAttr("visibility","hidden")},show:function(){this.setAttr("visibility","visible")},getBBox:function(){return this.R.getBBox(this)},toFront:function(){var a=this.node;if(a){this.prevNextNode=a.nextSibling;var b=a.parentNode;b&&b.appendChild(a)}},toPrevious:function(){var a=this.node;a&&this.prevNextNode&&(a=a.parentNode)&&a.insertBefore(this.prevNextNode,null)},toBack:function(){var a=this.node;if(a){this.prevNextNode=a.nextSibling;var b=a.parentNode;if(b){var c=b.firstChild;
c&&b.insertBefore(a,c)}}},mouseover:function(a){this.R.addListener(this,"mouseover",a);return this},mouseout:function(a){this.R.addListener(this,"mouseout",a);return this},click:function(a){this.R.addListener(this,"click",a);return this},dblclick:function(a){this.R.addListener(this,"dblclick",a);return this},mousedown:function(a){this.R.addListener(this,"mousedown",a);return this},mouseup:function(a){this.R.addListener(this,"mouseup",a);return this},touchstart:function(a){this.R.addListener(this,
"touchstart",a);return this},touchend:function(a){this.R.addListener(this,"touchend",a);return this},contextmenu:function(a){this.node.addEventListener?this.node.addEventListener("contextmenu",a,!0):this.R.addListener(this,"contextmenu",a);return this},stop:function(){d.removeFromArray(this.R.animations,this.an_x);d.removeFromArray(this.R.animations,this.an_y)},length:function(){return this.node.childNodes.length},gradient:function(a,b,c){this.R.gradient(this,a,b,c)},pattern:function(a,b,c){a&&this.R.pattern(this,
a,b,c)}})})();(function(){var d=window.AmCharts;d.SVGRenderer=d.Class({construct:function(a){this.D=a;this.animations=[]},create:function(a,b){return document.createElementNS(d.SVG_NS,b)},attr:function(a,b){for(var c in b)b.hasOwnProperty(c)&&this.setAttr(a,c,b[c])},setAttr:function(a,b,c){void 0!==c&&a.node.setAttribute(b,c)},animate:function(a,b,c,h,f){var e=a.node;a["an_"+b]&&d.removeFromArray(this.animations,a["an_"+b]);"translate"==b?(e=(e=e.getAttribute("transform"))?String(e).substring(10,e.length-1):"0,0",
e=e.split(", ").join(" "),e=e.split(" ").join(","),0===e&&(e="0,0")):e=Number(e.getAttribute(b));c={obj:a,frame:0,attribute:b,from:e,to:c,time:h,effect:f};this.animations.push(c);a["an_"+b]=c},update:function(){var a,b=this.animations;for(a=b.length-1;0<=a;a--){var c=b[a],h=1E3*c.time/d.updateRate,f=c.frame+1,e=c.obj,g=c.attribute,k,l,m;f<=h?(c.frame++,"translate"==g?(k=c.from.split(","),g=Number(k[0]),k=Number(k[1]),isNaN(k)&&(k=0),l=c.to.split(","),m=Number(l[0]),l=Number(l[1]),m=0===m-g?m:Math.round(d[c.effect](0,
f,g,m-g,h)),c=0===l-k?l:Math.round(d[c.effect](0,f,k,l-k,h)),g="transform",c="translate("+m+","+c+")"):(l=Number(c.from),k=Number(c.to),m=k-l,c=d[c.effect](0,f,l,m,h),isNaN(c)&&(c=k),0===m&&this.animations.splice(a,1)),this.setAttr(e,g,c)):("translate"==g?(l=c.to.split(","),m=Number(l[0]),l=Number(l[1]),e.translate(m,l)):(k=Number(c.to),this.setAttr(e,g,k)),this.animations.splice(a,1))}},getBBox:function(a){if(a=a.node)try{return a.getBBox()}catch(b){}return{width:0,height:0,x:0,y:0}},path:function(a,
b){a.node.setAttributeNS(d.SVG_XLINK,"xlink:href",b)},clipRect:function(a,b,c,h,f){var e=a.node,g=a.clipPath;g&&this.D.remove(g);var k=e.parentNode;k&&(e=document.createElementNS(d.SVG_NS,"clipPath"),g=d.getUniqueId(),e.setAttribute("id",g),this.D.rect(b,c,h,f,0,0,e),k.appendChild(e),b="#",d.baseHref&&!d.isIE&&(b=this.removeTarget(window.location.href)+b),this.setAttr(a,"clip-path","url("+b+g+")"),this.clipPathC++,a.clipPath=e)},text:function(a,b,c){var h=new d.AmDObject("text",this.D);a=String(a).split("\n");
var f=b["font-size"],e;for(e=0;e<a.length;e++){var g=this.create(null,"tspan");g.appendChild(document.createTextNode(a[e]));g.setAttribute("y",(f+2)*e+Math.round(f/2));g.setAttribute("x",0);g.style.fontSize=f+"px";h.node.appendChild(g)}h.node.setAttribute("y",Math.round(f/2));this.attr(h,b);this.D.addToContainer(h.node,c);return h},setText:function(a,b){var c=a.node;c&&(c.removeChild(c.firstChild),c.appendChild(document.createTextNode(b)))},move:function(a,b,c,d){isNaN(b)&&(b=0);isNaN(c)&&(c=0);b=
"translate("+b+","+c+")";d&&(b=b+" scale("+d+")");this.setAttr(a,"transform",b)},rotate:function(a,b){var c=a.node.getAttribute("transform"),d="rotate("+b+")";c&&(d=c+" "+d);this.setAttr(a,"transform",d)},set:function(a){var b=new d.AmDObject("g",this.D);this.D.container.appendChild(b.node);if(a){var c;for(c=0;c<a.length;c++)b.push(a[c])}return b},addListener:function(a,b,c){a.node["on"+b]=c},gradient:function(a,b,c,h){var f=a.node,e=a.grad;e&&this.D.remove(e);b=document.createElementNS(d.SVG_NS,
b);e=d.getUniqueId();b.setAttribute("id",e);if(!isNaN(h)){var g=0,k=0,l=0,m=0;90==h?l=100:270==h?m=100:180==h?g=100:0===h&&(k=100);b.setAttribute("x1",g+"%");b.setAttribute("x2",k+"%");b.setAttribute("y1",l+"%");b.setAttribute("y2",m+"%")}for(h=0;h<c.length;h++)g=document.createElementNS(d.SVG_NS,"stop"),k=100*h/(c.length-1),0===h&&(k=0),g.setAttribute("offset",k+"%"),g.setAttribute("stop-color",c[h]),b.appendChild(g);f.parentNode.appendChild(b);c="#";d.baseHref&&!d.isIE&&(c=this.removeTarget(window.location.href)+
c);f.setAttribute("fill","url("+c+e+")");a.grad=b},removeTarget:function(a){return a.split("#")[0]},pattern:function(a,b,c,h){var f=a.node;isNaN(c)&&(c=1);var e=a.patternNode;e&&this.D.remove(e);var e=document.createElementNS(d.SVG_NS,"pattern"),g=d.getUniqueId(),k=b;b.url&&(k=b.url);d.isAbsolute(k)||(k=h+k);h=Number(b.width);isNaN(h)&&(h=4);var l=Number(b.height);isNaN(l)&&(l=4);h/=c;l/=c;c=b.x;isNaN(c)&&(c=0);var m=-Math.random()*Number(b.randomX);isNaN(m)||(c=m);m=b.y;isNaN(m)&&(m=0);var n=-Math.random()*
Number(b.randomY);isNaN(n)||(m=n);e.setAttribute("id",g);e.setAttribute("width",h);e.setAttribute("height",l);e.setAttribute("patternUnits","userSpaceOnUse");e.setAttribute("xlink:href",k);b.color&&(n=document.createElementNS(d.SVG_NS,"rect"),n.setAttributeNS(null,"height",h),n.setAttributeNS(null,"width",l),n.setAttributeNS(null,"fill",b.color),e.appendChild(n));this.D.image(k,0,0,h,l,e).translate(c,m);k="#";d.baseHref&&!d.isIE&&(k=this.removeTarget(window.location.href)+k);f.setAttribute("fill",
"url("+k+g+")");a.patternNode=e;f.parentNode.appendChild(e)},remove:function(a){a.clipPath&&this.D.remove(a.clipPath);a.grad&&this.D.remove(a.grad);a.patternNode&&this.D.remove(a.patternNode);this.D.remove(a.node)}})})();(function(){var d=window.AmCharts;d.AmChart=d.Class({construct:function(a){this.theme=a;this.classNamePrefix="amcharts";this.addClassNames=!1;this.version="3.15.1";d.addChart(this);this.createEvents("dataUpdated","init","rendered","drawn","failed","resized");this.height=this.width="100%";this.dataChanged=!0;this.chartCreated=!1;this.previousWidth=this.previousHeight=0;this.backgroundColor="#FFFFFF";this.borderAlpha=this.backgroundAlpha=0;this.color=this.borderColor="#000000";this.fontFamily="Verdana";
this.fontSize=11;this.usePrefixes=!1;this.addCodeCredits=this.autoResize=!0;this.precision=-1;this.percentPrecision=2;this.decimalSeparator=".";this.thousandsSeparator=",";this.labels=[];this.allLabels=[];this.titles=[];this.marginRight=this.marginLeft=this.autoMarginOffset=0;this.timeOuts=[];this.creditsPosition="top-left";var b=document.createElement("div"),c=b.style;c.overflow="hidden";c.position="relative";c.textAlign="left";this.chartDiv=b;b=document.createElement("div");c=b.style;c.overflow=
"hidden";c.position="relative";c.textAlign="left";this.legendDiv=b;this.titleHeight=0;this.hideBalloonTime=150;this.handDrawScatter=2;this.handDrawThickness=1;this.prefixesOfBigNumbers=[{number:1E3,prefix:"k"},{number:1E6,prefix:"M"},{number:1E9,prefix:"G"},{number:1E12,prefix:"T"},{number:1E15,prefix:"P"},{number:1E18,prefix:"E"},{number:1E21,prefix:"Z"},{number:1E24,prefix:"Y"}];this.prefixesOfSmallNumbers=[{number:1E-24,prefix:"y"},{number:1E-21,prefix:"z"},{number:1E-18,prefix:"a"},{number:1E-15,
prefix:"f"},{number:1E-12,prefix:"p"},{number:1E-9,prefix:"n"},{number:1E-6,prefix:"\u03bc"},{number:.001,prefix:"m"}];this.panEventsEnabled=!0;this.product="amcharts";this.animations=[];this.balloon=new d.AmBalloon(this.theme);this.balloon.chart=this;d.applyTheme(this,a,"AmChart")},drawChart:function(){0<this.realWidth&&0<this.realHeight&&(this.drawBackground(),this.redrawLabels(),this.drawTitles(),this.brr(),this.renderFix())},drawBackground:function(){d.remove(this.background);var a=this.container,
b=this.backgroundColor,c=this.backgroundAlpha,h=this.set;d.isModern||0!==c||(c=.001);var f=this.updateWidth();this.realWidth=f;var e=this.updateHeight();this.realHeight=e;b=d.polygon(a,[0,f-1,f-1,0],[0,0,e-1,e-1],b,c,1,this.borderColor,this.borderAlpha);d.setCN(this,b,"bg");this.background=b;h.push(b);if(b=this.backgroundImage)a=a.image(b,0,0,f,e),d.setCN(this,b,"bg-image"),this.bgImg=a,h.push(a)},drawTitles:function(a){var b=this.titles;this.titleHeight=0;if(d.ifArray(b)){var c=20,h;for(h=0;h<b.length;h++){var f=
b[h],f=d.processObject(f,d.Title,this.theme);if(!1!==f.enabled){var e=f.color;void 0===e&&(e=this.color);var g=f.size;isNaN(g)&&(g=this.fontSize+2);isNaN(f.alpha);var k=this.marginLeft,e=d.wrappedText(this.container,f.text,e,this.fontFamily,g,"middle",!0,this.divRealWidth-20);e.translate(k+(this.realWidth-this.marginRight-k)/2,c);e.node.style.pointerEvents="none";f.sprite=e;d.setCN(this,e,"title");f.id&&d.setCN(this,e,"title-"+f.id);k=!0;void 0!==f.bold&&(k=f.bold);k&&e.attr({"font-weight":"bold"});
e.attr({opacity:f.alpha});c+=e.getBBox().height+5;a?e.remove():this.freeLabelsSet.push(e)}}this.titleHeight=c-10}},write:function(a){if(a="object"!=typeof a?document.getElementById(a):a){for(;a.firstChild;)a.removeChild(a.firstChild);this.div=a;a.style.overflow="hidden";a.style.textAlign="left";var b=this.chartDiv,c=this.legendDiv,h=this.legend,f=c.style,e=b.style;this.measure();this.previousHeight=this.divRealHeight;this.previousWidth=this.divRealWidth;var g,k=document.createElement("div");g=k.style;
g.position="relative";this.containerDiv=k;k.className=this.classNamePrefix+"-main-div";b.className=this.classNamePrefix+"-chart-div";a.appendChild(k);var l=this.exportConfig;l&&d.AmExport&&!this.AmExport&&(this.AmExport=new d.AmExport(this,l));this.amExport&&d.AmExport&&(this.AmExport=d.extend(this.amExport,new d.AmExport(this),!0));this.AmExport&&this.AmExport.init&&this.AmExport.init();if(h)if(h=this.addLegend(h,h.divId),h.enabled)switch(h.position){case "bottom":k.appendChild(b);k.appendChild(c);
break;case "top":k.appendChild(c);k.appendChild(b);break;case "absolute":g.width=a.style.width;g.height=a.style.height;f.position="absolute";e.position="absolute";void 0!==h.left&&(f.left=h.left+"px");void 0!==h.right&&(f.right=h.right+"px");void 0!==h.top&&(f.top=h.top+"px");void 0!==h.bottom&&(f.bottom=h.bottom+"px");h.marginLeft=0;h.marginRight=0;k.appendChild(b);k.appendChild(c);break;case "right":g.width=a.style.width;g.height=a.style.height;f.position="relative";e.position="absolute";k.appendChild(b);
k.appendChild(c);break;case "left":g.width=a.style.width;g.height=a.style.height;f.position="absolute";e.position="relative";k.appendChild(b);k.appendChild(c);break;case "outside":k.appendChild(b)}else k.appendChild(b);else k.appendChild(b);this.listenersAdded||(this.addListeners(),this.listenersAdded=!0);this.initChart()}},createLabelsSet:function(){d.remove(this.labelsSet);this.labelsSet=this.container.set();this.freeLabelsSet.push(this.labelsSet)},initChart:function(){window.AmCharts_path&&(this.path=
window.AmCharts_path);void 0===this.path&&(this.path=d.getPath());void 0===this.path&&(this.path="amcharts/");this.path=d.normalizeUrl(this.path);void 0===this.pathToImages&&(this.pathToImages=this.path+"images/");this.initHC||(d.callInitHandler(this),this.initHC=!0);d.applyLang(this.language,this);var a=this.numberFormatter;a&&(isNaN(a.precision)||(this.precision=a.precision),void 0!==a.thousandsSeparator&&(this.thousandsSeparator=a.thousandsSeparator),void 0!==a.decimalSeparator&&(this.decimalSeparator=
a.decimalSeparator));(a=this.percentFormatter)&&!isNaN(a.precision)&&(this.percentPrecision=a.precision);this.nf={precision:this.precision,thousandsSeparator:this.thousandsSeparator,decimalSeparator:this.decimalSeparator};this.pf={precision:this.percentPrecision,thousandsSeparator:this.thousandsSeparator,decimalSeparator:this.decimalSeparator};this.destroy();(a=this.container)?(a.container.innerHTML="",a.width=this.realWidth,a.height=this.realHeight,a.addDefs(this),this.chartDiv.appendChild(a.container)):
a=new d.AmDraw(this.chartDiv,this.realWidth,this.realHeight,this);this.container=a;this.checkDisplay();a.chart=this;d.VML||d.SVG?(a.handDrawn=this.handDrawn,a.handDrawScatter=this.handDrawScatter,a.handDrawThickness=this.handDrawThickness,this.set&&this.set.remove(),this.set=a.set(),this.gridSet&&this.gridSet.remove(),this.gridSet=a.set(),this.cursorLineSet&&this.cursorLineSet.remove(),this.cursorLineSet=a.set(),this.graphsBehindSet&&this.graphsBehindSet.remove(),this.graphsBehindSet=a.set(),this.bulletBehindSet&&
this.bulletBehindSet.remove(),this.bulletBehindSet=a.set(),this.columnSet&&this.columnSet.remove(),this.columnSet=a.set(),this.graphsSet&&this.graphsSet.remove(),this.graphsSet=a.set(),this.trendLinesSet&&this.trendLinesSet.remove(),this.trendLinesSet=a.set(),this.axesSet&&this.axesSet.remove(),this.axesSet=a.set(),this.cursorSet&&this.cursorSet.remove(),this.cursorSet=a.set(),this.scrollbarsSet&&this.scrollbarsSet.remove(),this.scrollbarsSet=a.set(),this.bulletSet&&this.bulletSet.remove(),this.bulletSet=
a.set(),this.freeLabelsSet&&this.freeLabelsSet.remove(),this.axesLabelsSet&&this.axesLabelsSet.remove(),this.axesLabelsSet=a.set(),this.freeLabelsSet=a.set(),this.balloonsSet&&this.balloonsSet.remove(),this.balloonsSet=a.set(),this.zoomButtonSet&&this.zoomButtonSet.remove(),this.zbSet&&(this.zbSet.remove(),this.zbSet=null),this.zoomButtonSet=a.set(),this.linkSet&&this.linkSet.remove(),this.linkSet=a.set()):this.fire("failed",{type:"failed",chart:this})},premeasure:function(){var a=this.div;if(a){this.boundingRect=
this.chartDiv.getBoundingClientRect();var b=a.offsetWidth,c=a.offsetHeight;a.clientHeight&&(b=a.clientWidth,c=a.clientHeight);if(b!=this.mw||c!=this.mh)this.mw=b,this.mh=c,this.measure()}},measure:function(){var a=this.div;if(a){var b=this.chartDiv,c=a.offsetWidth,h=a.offsetHeight,f=this.container;a.clientHeight&&(c=a.clientWidth,h=a.clientHeight);var e=d.removePx(d.getStyle(a,"padding-left")),g=d.removePx(d.getStyle(a,"padding-right")),k=d.removePx(d.getStyle(a,"padding-top")),l=d.removePx(d.getStyle(a,
"padding-bottom"));isNaN(e)||(c-=e);isNaN(g)||(c-=g);isNaN(k)||(h-=k);isNaN(l)||(h-=l);e=a.style;a=e.width;e=e.height;-1!=a.indexOf("px")&&(c=d.removePx(a));-1!=e.indexOf("px")&&(h=d.removePx(e));h=Math.round(h);c=Math.round(c);a=Math.round(d.toCoordinate(this.width,c));e=Math.round(d.toCoordinate(this.height,h));(c!=this.previousWidth||h!=this.previousHeight)&&0<a&&0<e&&(b.style.width=a+"px",b.style.height=e+"px",b.style.padding=0,f&&f.setSize(a,e),this.balloon=d.processObject(this.balloon,d.AmBalloon,
this.theme),this.balloon.setBounds(2,2,a-2,e));this.balloon.chart=this;this.realWidth=a;this.realHeight=e;this.divRealWidth=c;this.divRealHeight=h}},checkDisplay:function(){if(this.container){var a=d.rect(this.container,10,10),b=a.getBBox();0===b.width&&0===b.height&&(this.divRealHeight=this.divRealWidth=this.realHeight=this.realWidth=0,this.previousWidth=this.previousHeight=NaN);a.remove()}},destroy:function(){this.chartDiv.innerHTML="";this.clearTimeOuts();this.legend&&this.legend.destroy()},clearTimeOuts:function(){var a=
this.timeOuts;if(a){var b;for(b=0;b<a.length;b++)clearTimeout(a[b])}this.timeOuts=[]},clear:function(a){d.callMethod("clear",[this.chartScrollbar,this.scrollbarV,this.scrollbarH,this.chartCursor]);this.chartCursor=this.scrollbarH=this.scrollbarV=this.chartScrollbar=null;this.clearTimeOuts();this.container&&(this.container.remove(this.chartDiv),this.container.remove(this.legendDiv));a||d.removeChart(this);if(a=this.div)for(;a.firstChild;)a.removeChild(a.firstChild);this.legend&&this.legend.destroy()},
setMouseCursor:function(a){"auto"==a&&d.isNN&&(a="default");this.chartDiv.style.cursor=a;this.legendDiv.style.cursor=a},redrawLabels:function(){this.labels=[];var a=this.allLabels;this.createLabelsSet();var b;for(b=0;b<a.length;b++)this.drawLabel(a[b])},drawLabel:function(a){if(this.container&&!1!==a.enabled){a=d.processObject(a,d.Label,this.theme);var b=a.y,c=a.text,h=a.align,f=a.size,e=a.color,g=a.rotation,k=a.alpha,l=a.bold,m=d.toCoordinate(a.x,this.realWidth),b=d.toCoordinate(b,this.realHeight);
m||(m=0);b||(b=0);void 0===e&&(e=this.color);isNaN(f)&&(f=this.fontSize);h||(h="start");"left"==h&&(h="start");"right"==h&&(h="end");"center"==h&&(h="middle",g?b=this.realHeight-b+b/2:m=this.realWidth/2-m);void 0===k&&(k=1);void 0===g&&(g=0);b+=f/2;c=d.text(this.container,c,e,this.fontFamily,f,h,l,k);c.translate(m,b);d.setCN(this,c,"label");a.id&&d.setCN(this,c,"label-"+a.id);0!==g&&c.rotate(g);a.url?(c.setAttr("cursor","pointer"),c.click(function(){d.getURL(a.url)})):c.node.style.pointerEvents="none";
this.labelsSet.push(c);this.labels.push(c)}},addLabel:function(a,b,c,d,f,e,g,k,l,m){a={x:a,y:b,text:c,align:d,size:f,color:e,alpha:k,rotation:g,bold:l,url:m,enabled:!0};this.container&&this.drawLabel(a);this.allLabels.push(a)},clearLabels:function(){var a=this.labels,b;for(b=a.length-1;0<=b;b--)a[b].remove();this.labels=[];this.allLabels=[]},updateHeight:function(){var a=this.divRealHeight,b=this.legend;if(b){var c=this.legendDiv.offsetHeight,b=b.position;if("top"==b||"bottom"==b){a-=c;if(0>a||isNaN(a))a=
0;this.chartDiv.style.height=a+"px"}}return a},updateWidth:function(){var a=this.divRealWidth,b=this.divRealHeight,c=this.legend;if(c){var d=this.legendDiv,f=d.offsetWidth;isNaN(c.width)||(f=c.width);c.ieW&&(f=c.ieW);var e=d.offsetHeight,d=d.style,g=this.chartDiv.style,c=c.position;if("right"==c||"left"==c){a-=f;if(0>a||isNaN(a))a=0;g.width=a+"px";"left"==c?(g.left=f+"px",d.left="0px"):(g.left="0px",d.left=a+"px");b>e&&(d.top=(b-e)/2+"px")}}return a},getTitleHeight:function(){this.drawTitles(!0);
return this.titleHeight},addTitle:function(a,b,c,d,f){isNaN(b)&&(b=this.fontSize+2);a={text:a,size:b,color:c,alpha:d,bold:f,enabled:!0};this.titles.push(a);return a},handleWheel:function(a){var b=0;a||(a=window.event);a.wheelDelta?b=a.wheelDelta/120:a.detail&&(b=-a.detail/3);b&&this.handleWheelReal(b,a.shiftKey);a.preventDefault&&a.preventDefault()},handleWheelReal:function(){},addListeners:function(){var a=this,b=a.chartDiv;document.addEventListener?(a.panEventsEnabled&&(b.style.msTouchAction="none"),
"ontouchstart"in document.documentElement&&(b.addEventListener("touchstart",function(b){a.handleTouchStart.call(a,b)},!0),b.addEventListener("touchmove",function(b){a.handleMouseMove.call(a,b)},!0),b.addEventListener("touchend",function(b){a.handleTouchEnd.call(a,b)},!0)),b.addEventListener("mousedown",function(b){a.mouseIsOver=!0;a.handleMouseMove.call(a,b);a.handleMouseDown.call(a,b)},!0),b.addEventListener("mouseover",function(b){a.handleMouseOver.call(a,b)},!0),b.addEventListener("mouseout",function(b){a.handleMouseOut.call(a,
b)},!0)):(b.attachEvent("onmousedown",function(b){a.handleMouseDown.call(a,b)}),b.attachEvent("onmouseover",function(b){a.handleMouseOver.call(a,b)}),b.attachEvent("onmouseout",function(b){a.handleMouseOut.call(a,b)}))},dispDUpd:function(){if(!this.skipEvents){var a;this.dispatchDataUpdated&&(this.dispatchDataUpdated=!1,a="dataUpdated",this.fire(a,{type:a,chart:this}));this.chartCreated||(this.chartCreated=!0,a="init",this.fire(a,{type:a,chart:this}));this.chartRendered||(a="rendered",this.fire(a,
{type:a,chart:this}),this.chartRendered=!0);a="drawn";this.fire(a,{type:a,chart:this})}this.skipEvents=!1},validateSize:function(){var a=this;a.premeasure();a.checkDisplay();if(a.divRealWidth!=a.previousWidth||a.divRealHeight!=a.previousHeight){var b=a.legend;if(0<a.realWidth&&0<a.realHeight){a.sizeChanged=!0;if(b){a.legendInitTO&&clearTimeout(a.legendInitTO);var c=setTimeout(function(){b.invalidateSize()},10);a.timeOuts.push(c);a.legendInitTO=c}"xy"!=a.type?a.marginsUpdated=!1:(a.marginsUpdated=
!0,a.selfZoom=!0);clearTimeout(a.initTO);c=setTimeout(function(){a.initChart()},10);a.timeOuts.push(c);a.initTO=c}a.fire("resized",{type:"resized",chart:a});a.renderFix();b&&b.renderFix&&b.renderFix();a.previousHeight=a.divRealHeight;a.previousWidth=a.divRealWidth}},invalidateSize:function(){this.previousHeight=this.previousWidth=NaN;this.invalidateSizeReal()},invalidateSizeReal:function(){var a=this;a.marginsUpdated=!1;clearTimeout(a.validateTO);var b=setTimeout(function(){a.validateSize()},5);a.timeOuts.push(b);
a.validateTO=b},validateData:function(a){this.chartCreated&&(this.dataChanged=!0,this.marginsUpdated=!1,this.initChart(a))},validateNow:function(a,b){this.initTO&&clearTimeout(this.initTO);a&&(this.dataChanged=!0);this.skipEvents=b;this.chartRendered=!1;this.write(this.div)},showItem:function(a){a.hidden=!1;this.initChart()},hideItem:function(a){a.hidden=!0;this.initChart()},hideBalloon:function(){var a=this;clearTimeout(a.hoverInt);clearTimeout(a.balloonTO);a.hoverInt=setTimeout(function(){a.hideBalloonReal.call(a)},
a.hideBalloonTime)},cleanChart:function(){},hideBalloonReal:function(){var a=this.balloon;a&&a.hide()},showBalloon:function(a,b,c,d,f){var e=this;clearTimeout(e.balloonTO);clearTimeout(e.hoverInt);e.balloonTO=setTimeout(function(){e.showBalloonReal.call(e,a,b,c,d,f)},1)},showBalloonReal:function(a,b,c,d,f){this.handleMouseMove();var e=this.balloon;e.enabled&&(e.followCursor(!1),e.changeColor(b),!c||e.fixedPosition?(e.setPosition(d,f),e.followCursor(!1)):e.followCursor(!0),a&&e.showBalloon(a))},handleMouseOver:function(){this.outTO&&
clearTimeout(this.outTO);d.resetMouseOver();this.mouseIsOver=!0},handleMouseOut:function(){var a=this;a.outTO&&clearTimeout(a.outTO);a.outTO=setTimeout(function(){a.handleMouseOutReal()},10)},handleMouseOutReal:function(){d.resetMouseOver();this.mouseIsOver=!1},handleMouseMove:function(a){a||(a=window.event);if(a){if(a.touches&&(a=a.touches.item(0),!a))return;this.boundingRect&&a.clientX&&(this.mouseX=a.clientX-this.boundingRect.left,this.mouseY=a.clientY-this.boundingRect.top)}},handleTouchStart:function(a){this.handleMouseMove(a);
this.handleMouseDown(a)},handleTouchEnd:function(a){this.handleMouseMove(a);d.resetMouseOver();this.handleReleaseOutside(a)},handleReleaseOutside:function(){},handleMouseDown:function(a){d.resetMouseOver();this.mouseIsOver=!0;a&&a.preventDefault&&(this.panEventsEnabled?a.preventDefault():a.touches||a.preventDefault())},addLegend:function(a,b){a=d.processObject(a,d.AmLegend,this.theme);a.divId=b;a.ieW=0;var c;c="object"!=typeof b&&b?document.getElementById(b):b;this.legend=a;a.chart=this;c?(a.div=
c,a.position="outside",a.autoMargins=!1):a.div=this.legendDiv;return a},removeLegend:function(){this.legend=void 0;this.legendDiv.innerHTML=""},handleResize:function(){(d.isPercents(this.width)||d.isPercents(this.height))&&this.invalidateSizeReal();this.renderFix()},renderFix:function(){if(!d.VML){var a=this.container;a&&a.renderFix()}},getSVG:function(){if(d.hasSVG)return this.container},animate:function(a,b,c,h,f,e,g){a["an_"+b]&&d.removeFromArray(this.animations,a["an_"+b]);c={obj:a,frame:0,attribute:b,
from:c,to:h,time:f,effect:e,suffix:g};a["an_"+b]=c;this.animations.push(c);return c},setLegendData:function(a){var b=this.legend;b&&b.setData(a)},stopAnim:function(a){d.removeFromArray(this.animations,a)},updateAnimations:function(){var a;this.container&&this.container.update();if(this.animations)for(a=this.animations.length-1;0<=a;a--){var b=this.animations[a],c=1E3*b.time/d.updateRate,h=b.frame+1,f=b.obj,e=b.attribute;if(h<=c){b.frame++;var g=Number(b.from),k=Number(b.to)-g,c=d[b.effect](0,h,g,
k,c);0===k?(this.animations.splice(a,1),f.node.style[e]=Number(b.to)+b.suffix):f.node.style[e]=c+b.suffix}else f.node.style[e]=Number(b.to)+b.suffix,this.animations.splice(a,1)}},update:function(){this.updateAnimations()},inIframe:function(){try{return window.self!==window.top}catch(a){return!0}},brr:function(){var a="amcharts.com",b=window.location.hostname.split("."),c;2<=b.length&&(c=b[b.length-2]+"."+b[b.length-1]);this.amLink&&(b=this.amLink.parentNode)&&b.removeChild(this.amLink);b=this.creditsPosition;
if(c!=a||!0===this.inIframe()){var a="http://www."+a,d=c=0,f=this.realWidth,e=this.realHeight,g=this.type;if("serial"==g||"xy"==g||"gantt"==g)c=this.marginLeftReal,d=this.marginTopReal,f=c+this.plotAreaWidth,e=d+this.plotAreaHeight;var g=a+"/javascript-charts/",k="JavaScript charts",l="JS chart by amCharts";"ammap"==this.product&&(g=a+"/javascript-maps/",k="Interactive JavaScript maps",l="JS map by amCharts");a=document.createElement("a");l=document.createTextNode(l);a.setAttribute("href",g);a.setAttribute("title",
k);a.appendChild(l);this.chartDiv.appendChild(a);this.amLink=a;g=a.style;g.position="absolute";g.textDecoration="none";g.color=this.color;g.fontFamily=this.fontFamily;g.fontSize=this.fontSize+"px";g.opacity=.7;g.display="block";var k=a.offsetWidth,a=a.offsetHeight,l=5+c,m=d+5;"bottom-left"==b&&(l=5+c,m=e-a-3);"bottom-right"==b&&(l=f-k-5,m=e-a-3);"top-right"==b&&(l=f-k-5,m=d+5);g.left=l+"px";g.top=m+"px"}}});d.Slice=d.Class({construct:function(){}});d.SerialDataItem=d.Class({construct:function(){}});
d.GraphDataItem=d.Class({construct:function(){}});d.Guide=d.Class({construct:function(a){this.cname="Guide";d.applyTheme(this,a,this.cname)}});d.Title=d.Class({construct:function(a){this.cname="Title";d.applyTheme(this,a,this.cname)}});d.Label=d.Class({construct:function(a){this.cname="Label";d.applyTheme(this,a,this.cname)}})})();(function(){var d=window.AmCharts;d.AmBalloon=d.Class({construct:function(a){this.cname="AmBalloon";this.enabled=!0;this.fillColor="#FFFFFF";this.fillAlpha=.8;this.borderThickness=2;this.borderColor="#FFFFFF";this.borderAlpha=1;this.cornerRadius=0;this.maxWidth=220;this.horizontalPadding=8;this.verticalPadding=4;this.pointerWidth=6;this.pointerOrientation="V";this.color="#000000";this.adjustBorderColor=!0;this.show=this.follow=this.showBullet=!1;this.bulletSize=3;this.shadowAlpha=.4;this.shadowColor=
"#000000";this.fadeOutDuration=this.animationDuration=.3;this.fixedPosition=!1;this.offsetY=6;this.offsetX=1;this.textAlign="center";this.disableMouseEvents=!0;this.deltaSignX=this.deltaSignY=1;d.isModern||(this.offsetY*=1.5);d.applyTheme(this,a,this.cname)},draw:function(){var a=this.pointToX,b=this.pointToY,c=this.chart;d.VML&&(this.fadeOutDuration=0);this.xAnim&&c.stopAnim(this.xAnim);this.yAnim&&c.stopAnim(this.yAnim);if(!isNaN(a)){var h=this.follow,f=c.container,e=this.set;d.remove(e);this.removeDiv();
e=f.set();e.node.style.pointerEvents="none";this.set=e;c.balloonsSet.push(e);if(this.show){var g=this.l,k=this.t,l=this.r,m=this.b,n=this.balloonColor,p=this.fillColor,u=this.borderColor,t=p;void 0!=n&&(this.adjustBorderColor?t=u=n:p=n);var v=this.horizontalPadding,D=this.verticalPadding,A=this.pointerWidth,C=this.pointerOrientation,B=this.cornerRadius,w=c.fontFamily,q=this.fontSize;void 0==q&&(q=c.fontSize);var n=document.createElement("div"),x=c.classNamePrefix;n.className=x+"-balloon-div";this.className&&
(n.className=n.className+" "+x+"-balloon-div-"+this.className);x=n.style;this.disableMouseEvents&&(x.pointerEvents="none");x.position="absolute";var y=this.minWidth,r="";isNaN(y)||(r="min-width:"+(y-2*v)+"px; ");n.innerHTML="<div style='text-align:"+this.textAlign+"; "+r+"max-width:"+this.maxWidth+"px; font-size:"+q+"px; color:"+this.color+"; font-family:"+w+"'>"+this.text+"</div>";c.chartDiv.appendChild(n);this.textDiv=n;q=n.offsetWidth;w=n.offsetHeight;n.clientHeight&&(q=n.clientWidth,w=n.clientHeight);
w+=2*D;r=q+2*v;!isNaN(y)&&r<y&&(r=y);window.opera&&(w+=2);var E=!1,q=this.offsetY;c.handDrawn&&(q+=c.handDrawScatter+2);"H"!=C?(y=a-r/2,b<k+w+10&&"down"!=C?(E=!0,h&&(b+=q),q=b+A,this.deltaSignY=-1):(h&&(b-=q),q=b-w-A,this.deltaSignY=1)):(2*A>w&&(A=w/2),q=b-w/2,a<g+(l-g)/2?(y=a+A,this.deltaSignX=-1):(y=a-r-A,this.deltaSignX=1));q+w>=m&&(q=m-w);q<k&&(q=k);y<g&&(y=g);y+r>l&&(y=l-r);var k=q+D,m=y+v,D=this.shadowAlpha,F=this.shadowColor,v=this.borderThickness,z=this.bulletSize,H;0<B||0===A?(0<D&&(a=d.rect(f,
r,w,p,0,v+1,F,D,this.cornerRadius),d.isModern?a.translate(1,1):a.translate(4,4),e.push(a)),p=d.rect(f,r,w,p,this.fillAlpha,v,u,this.borderAlpha,this.cornerRadius),this.showBullet&&(H=d.circle(f,z,t,this.fillAlpha),e.push(H))):(t=[],B=[],"H"!=C?(g=a-y,g>r-A&&(g=r-A),g<A&&(g=A),t=[0,g-A,a-y,g+A,r,r,0,0],B=E?[0,0,b-q,0,0,w,w,0]:[w,w,b-q,w,w,0,0,w]):(t=b-q,t>w-A&&(t=w-A),t<A&&(t=A),B=[0,t-A,b-q,t+A,w,w,0,0],t=a<g+(l-g)/2?[0,0,y<a?0:a-y,0,0,r,r,0]:[r,r,y+r>a?r:a-y,r,r,0,0,r]),0<D&&(a=d.polygon(f,t,B,p,
0,v,F,D),a.translate(1,1),e.push(a)),p=d.polygon(f,t,B,p,this.fillAlpha,v,u,this.borderAlpha));this.bg=p;e.push(p);p.toFront();d.setCN(c,p,"balloon-bg");this.className&&d.setCN(c,p,"balloon-bg-"+this.className);f=1*this.deltaSignX;x.left=m+"px";x.top=k+"px";e.translate(y-f,q);p=p.getBBox();this.bottom=q+w+1;this.yPos=p.y+q;H&&H.translate(this.pointToX-y+f,b-q);b=this.animationDuration;0<this.animationDuration&&!h&&!isNaN(this.prevX)&&(e.translate(this.prevX,this.prevY),e.animate({translate:y-f+","+
q},b,"easeOutSine"),n&&(x.left=this.prevTX+"px",x.top=this.prevTY+"px",this.xAnim=c.animate({node:n},"left",this.prevTX,m,b,"easeOutSine","px"),this.yAnim=c.animate({node:n},"top",this.prevTY,k,b,"easeOutSine","px")));this.prevX=y-f;this.prevY=q;this.prevTX=m;this.prevTY=k}}},followMouse:function(){if(this.follow&&this.show){var a=this.chart.mouseX-this.offsetX*this.deltaSignX,b=this.chart.mouseY;this.pointToX=a;this.pointToY=b;if(a!=this.previousX||b!=this.previousY)if(this.previousX=a,this.previousY=
b,0===this.cornerRadius)this.draw();else{var c=this.set;if(c){var d=c.getBBox(),a=a-d.width/2,f=b-d.height-10;a<this.l&&(a=this.l);a>this.r-d.width&&(a=this.r-d.width);f<this.t&&(f=b+10);c.translate(a,f);b=this.textDiv.style;b.left=a+this.horizontalPadding+"px";b.top=f+this.verticalPadding+"px"}}}},changeColor:function(a){this.balloonColor=a},setBounds:function(a,b,c,d){this.l=a;this.t=b;this.r=c;this.b=d;this.destroyTO&&clearTimeout(this.destroyTO)},showBalloon:function(a){this.text=a;this.show=
!0;this.destroyTO&&clearTimeout(this.destroyTO);a=this.chart;this.fadeAnim1&&a.stopAnim(this.fadeAnim1);this.fadeAnim2&&a.stopAnim(this.fadeAnim2);this.draw()},hide:function(a){var b=this;isNaN(a)&&(a=b.fadeOutDuration);var c=b.chart;if(0<a){b.destroyTO&&clearTimeout(b.destroyTO);b.destroyTO=setTimeout(function(){b.destroy.call(b)},1E3*a);b.follow=!1;b.show=!1;var d=b.set;d&&(d.setAttr("opacity",b.fillAlpha),b.fadeAnim1=d.animate({opacity:0},a,"easeInSine"));b.textDiv&&(b.fadeAnim2=c.animate({node:b.textDiv},
"opacity",1,0,a,"easeInSine",""))}else b.show=!1,b.follow=!1,b.destroy()},setPosition:function(a,b,c){this.pointToX=a;this.pointToY=b;c&&(a==this.previousX&&b==this.previousY||this.draw());this.previousX=a;this.previousY=b},followCursor:function(a){var b=this;(b.follow=a)?(b.pShowBullet=b.showBullet,b.showBullet=!1):void 0!==b.pShowBullet&&(b.showBullet=b.pShowBullet);clearInterval(b.interval);var c=b.chart.mouseX,d=b.chart.mouseY;!isNaN(c)&&a&&(b.pointToX=c-b.offsetX*b.deltaSignX,b.pointToY=d,b.followMouse(),
b.interval=setInterval(function(){b.followMouse.call(b)},40))},removeDiv:function(){if(this.textDiv){var a=this.textDiv.parentNode;a&&a.removeChild(this.textDiv)}},destroy:function(){clearInterval(this.interval);d.remove(this.set);this.removeDiv();this.set=null}})})();(function(){var d=window.AmCharts;d.circle=function(a,b,c,h,f,e,g,k,l){0>=b&&(b=.001);if(void 0==f||0===f)f=.01;void 0===e&&(e="#000000");void 0===g&&(g=0);h={fill:c,stroke:e,"fill-opacity":h,"stroke-width":f,"stroke-opacity":g};a=isNaN(l)?a.circle(0,0,b).attr(h):a.ellipse(0,0,b,l).attr(h);k&&a.gradient("radialGradient",[c,d.adjustLuminosity(c,-.6)]);return a};d.text=function(a,b,c,h,f,e,g,k){e||(e="middle");"right"==e&&(e="end");"left"==e&&(e="start");isNaN(k)&&(k=1);void 0!==b&&(b=String(b),d.isIE&&
!d.isModern&&(b=b.replace("&amp;","&"),b=b.replace("&","&amp;")));c={fill:c,"font-family":h,"font-size":f,opacity:k};!0===g&&(c["font-weight"]="bold");c["text-anchor"]=e;return a.text(b,c)};d.polygon=function(a,b,c,h,f,e,g,k,l,m,n){isNaN(e)&&(e=.01);isNaN(k)&&(k=f);var p=h,u=!1;"object"==typeof p&&1<p.length&&(u=!0,p=p[0]);void 0===g&&(g=p);f={fill:p,stroke:g,"fill-opacity":f,"stroke-width":e,"stroke-opacity":k};void 0!==n&&0<n&&(f["stroke-dasharray"]=n);n=d.dx;e=d.dy;a.handDrawn&&(c=d.makeHD(b,c,
a.handDrawScatter),b=c[0],c=c[1]);g=Math.round;m&&(g=d.doNothing);m="M"+(g(b[0])+n)+","+(g(c[0])+e);for(k=1;k<b.length;k++)m+=" L"+(g(b[k])+n)+","+(g(c[k])+e);a=a.path(m+" Z").attr(f);u&&a.gradient("linearGradient",h,l);return a};d.rect=function(a,b,c,h,f,e,g,k,l,m,n){if(isNaN(b)||isNaN(c))return a.set();isNaN(e)&&(e=0);void 0===l&&(l=0);void 0===m&&(m=270);isNaN(f)&&(f=0);var p=h,u=!1;"object"==typeof p&&(p=p[0],u=!0);void 0===g&&(g=p);void 0===k&&(k=f);b=Math.round(b);c=Math.round(c);var t=0,v=
0;0>b&&(b=Math.abs(b),t=-b);0>c&&(c=Math.abs(c),v=-c);t+=d.dx;v+=d.dy;f={fill:p,stroke:g,"fill-opacity":f,"stroke-opacity":k};void 0!==n&&0<n&&(f["stroke-dasharray"]=n);a=a.rect(t,v,b,c,l,e).attr(f);u&&a.gradient("linearGradient",h,m);return a};d.bullet=function(a,b,c,h,f,e,g,k,l,m,n,p){var u;"circle"==b&&(b="round");switch(b){case "round":u=d.circle(a,c/2,h,f,e,g,k);break;case "square":u=d.polygon(a,[-c/2,c/2,c/2,-c/2],[c/2,c/2,-c/2,-c/2],h,f,e,g,k,m-180);break;case "rectangle":u=d.polygon(a,[-c,
c,c,-c],[c/2,c/2,-c/2,-c/2],h,f,e,g,k,m-180);break;case "diamond":u=d.polygon(a,[-c/2,0,c/2,0],[0,-c/2,0,c/2],h,f,e,g,k);break;case "triangleUp":u=d.triangle(a,c,0,h,f,e,g,k);break;case "triangleDown":u=d.triangle(a,c,180,h,f,e,g,k);break;case "triangleLeft":u=d.triangle(a,c,270,h,f,e,g,k);break;case "triangleRight":u=d.triangle(a,c,90,h,f,e,g,k);break;case "bubble":u=d.circle(a,c/2,h,f,e,g,k,!0);break;case "line":u=d.line(a,[-c/2,c/2],[0,0],h,f,e,g,k);break;case "yError":u=a.set();u.push(d.line(a,
[0,0],[-c/2,c/2],h,f,e));u.push(d.line(a,[-l,l],[-c/2,-c/2],h,f,e));u.push(d.line(a,[-l,l],[c/2,c/2],h,f,e));break;case "xError":u=a.set(),u.push(d.line(a,[-c/2,c/2],[0,0],h,f,e)),u.push(d.line(a,[-c/2,-c/2],[-l,l],h,f,e)),u.push(d.line(a,[c/2,c/2],[-l,l],h,f,e))}u&&u.pattern(n,NaN,p);return u};d.triangle=function(a,b,c,d,f,e,g,k){if(void 0===e||0===e)e=1;void 0===g&&(g="#000");void 0===k&&(k=0);d={fill:d,stroke:g,"fill-opacity":f,"stroke-width":e,"stroke-opacity":k};b/=2;var l;0===c&&(l=" M"+-b+
","+b+" L0,"+-b+" L"+b+","+b+" Z");180==c&&(l=" M"+-b+","+-b+" L0,"+b+" L"+b+","+-b+" Z");90==c&&(l=" M"+-b+","+-b+" L"+b+",0 L"+-b+","+b+" Z");270==c&&(l=" M"+-b+",0 L"+b+","+b+" L"+b+","+-b+" Z");return a.path(l).attr(d)};d.line=function(a,b,c,h,f,e,g,k,l,m,n){if(a.handDrawn&&!n)return d.handDrawnLine(a,b,c,h,f,e,g,k,l,m,n);e={fill:"none","stroke-width":e};void 0!==g&&0<g&&(e["stroke-dasharray"]=g);isNaN(f)||(e["stroke-opacity"]=f);h&&(e.stroke=h);h=Math.round;m&&(h=d.doNothing);m=d.dx;f=d.dy;g=
"M"+(h(b[0])+m)+","+(h(c[0])+f);for(k=1;k<b.length;k++)g+=" L"+(h(b[k])+m)+","+(h(c[k])+f);if(d.VML)return a.path(g,void 0,!0).attr(e);l&&(g+=" M0,0 L0,0");return a.path(g).attr(e)};d.makeHD=function(a,b,c){for(var d=[],f=[],e=1;e<a.length;e++)for(var g=Number(a[e-1]),k=Number(b[e-1]),l=Number(a[e]),m=Number(b[e]),n=Math.sqrt(Math.pow(l-g,2)+Math.pow(m-k,2)),n=Math.round(n/50)+1,l=(l-g)/n,m=(m-k)/n,p=0;p<=n;p++){var u=g+p*l+Math.random()*c,t=k+p*m+Math.random()*c;d.push(u);f.push(t)}return[d,f]};
d.handDrawnLine=function(a,b,c,h,f,e,g,k,l,m){var n,p=a.set();for(n=1;n<b.length;n++)for(var u=[b[n-1],b[n]],t=[c[n-1],c[n]],t=d.makeHD(u,t,a.handDrawScatter),u=t[0],t=t[1],v=1;v<u.length;v++)p.push(d.line(a,[u[v-1],u[v]],[t[v-1],t[v]],h,f,e+Math.random()*a.handDrawThickness-a.handDrawThickness/2,g,k,l,m,!0));return p};d.doNothing=function(a){return a};d.wedge=function(a,b,c,h,f,e,g,k,l,m,n,p,u){var t=Math.round;e=t(e);g=t(g);k=t(k);var v=t(g/e*k),D=d.VML,A=359.5+e/100;359.94<A&&(A=359.94);f>=A&&
(f=A);var C=1/180*Math.PI,A=b+Math.sin(h*C)*k,B=c-Math.cos(h*C)*v,w=b+Math.sin(h*C)*e,q=c-Math.cos(h*C)*g,x=b+Math.sin((h+f)*C)*e,y=c-Math.cos((h+f)*C)*g,r=b+Math.sin((h+f)*C)*k,C=c-Math.cos((h+f)*C)*v,E={fill:d.adjustLuminosity(m.fill,-.2),"stroke-opacity":0,"fill-opacity":m["fill-opacity"]},F=0;180<Math.abs(f)&&(F=1);h=a.set();var z;D&&(A=t(10*A),w=t(10*w),x=t(10*x),r=t(10*r),B=t(10*B),q=t(10*q),y=t(10*y),C=t(10*C),b=t(10*b),l=t(10*l),c=t(10*c),e*=10,g*=10,k*=10,v*=10,1>Math.abs(f)&&1>=Math.abs(x-
w)&&1>=Math.abs(y-q)&&(z=!0));f="";var H;p&&(E["fill-opacity"]=0,E["stroke-opacity"]=m["stroke-opacity"]/2,E.stroke=m.stroke);if(0<l){H=" M"+A+","+(B+l)+" L"+w+","+(q+l);D?(z||(H+=" A"+(b-e)+","+(l+c-g)+","+(b+e)+","+(l+c+g)+","+w+","+(q+l)+","+x+","+(y+l)),H+=" L"+r+","+(C+l),0<k&&(z||(H+=" B"+(b-k)+","+(l+c-v)+","+(b+k)+","+(l+c+v)+","+r+","+(l+C)+","+A+","+(l+B)))):(H+=" A"+e+","+g+",0,"+F+",1,"+x+","+(y+l)+" L"+r+","+(C+l),0<k&&(H+=" A"+k+","+v+",0,"+F+",0,"+A+","+(B+l)));H+=" Z";var G=l;D&&(G/=
10);for(var P=0;P<G;P+=10){var J=a.path(H,void 0,void 0,"1000,1000").attr(E);h.push(J);J.translate(0,-P)}H=a.path(" M"+A+","+B+" L"+A+","+(B+l)+" L"+w+","+(q+l)+" L"+w+","+q+" L"+A+","+B+" Z",void 0,void 0,"1000,1000").attr(E);l=a.path(" M"+x+","+y+" L"+x+","+(y+l)+" L"+r+","+(C+l)+" L"+r+","+C+" L"+x+","+y+" Z",void 0,void 0,"1000,1000").attr(E);h.push(H);h.push(l)}D?(z||(f=" A"+t(b-e)+","+t(c-g)+","+t(b+e)+","+t(c+g)+","+t(w)+","+t(q)+","+t(x)+","+t(y)),e=" M"+t(A)+","+t(B)+" L"+t(w)+","+t(q)+f+
" L"+t(r)+","+t(C)):e=" M"+A+","+B+" L"+w+","+q+(" A"+e+","+g+",0,"+F+",1,"+x+","+y)+" L"+r+","+C;0<k&&(D?z||(e+=" B"+(b-k)+","+(c-v)+","+(b+k)+","+(c+v)+","+r+","+C+","+A+","+B):e+=" A"+k+","+v+",0,"+F+",0,"+A+","+B);a.handDrawn&&(b=d.line(a,[A,w],[B,q],m.stroke,m.thickness*Math.random()*a.handDrawThickness,m["stroke-opacity"]),h.push(b));a=a.path(e+" Z",void 0,void 0,"1000,1000").attr(m);if(n){b=[];for(c=0;c<n.length;c++)b.push(d.adjustLuminosity(m.fill,n[c]));0<b.length&&a.gradient("linearGradient",
b)}a.pattern(p,NaN,u);h.wedge=a;h.push(a);return h};d.adjustLuminosity=function(a,b){a=String(a).replace(/[^0-9a-f]/gi,"");6>a.length&&(a=String(a[0])+String(a[0])+String(a[1])+String(a[1])+String(a[2])+String(a[2]));b=b||0;var c="#",d,f;for(f=0;3>f;f++)d=parseInt(a.substr(2*f,2),16),d=Math.round(Math.min(Math.max(0,d+d*b),255)).toString(16),c+=("00"+d).substr(d.length);return c}})();(function(){var d=window.AmCharts;d.AmLegend=d.Class({construct:function(a){this.enabled=!0;this.cname="AmLegend";this.createEvents("rollOverMarker","rollOverItem","rollOutMarker","rollOutItem","showItem","hideItem","clickMarker","rollOverItem","rollOutItem","clickLabel");this.position="bottom";this.borderColor=this.color="#000000";this.borderAlpha=0;this.markerLabelGap=5;this.verticalGap=10;this.align="left";this.horizontalGap=0;this.spacing=10;this.markerDisabledColor="#AAB3B3";this.markerType=
"square";this.markerSize=16;this.markerBorderThickness=this.markerBorderAlpha=1;this.marginBottom=this.marginTop=0;this.marginLeft=this.marginRight=20;this.autoMargins=!0;this.valueWidth=50;this.switchable=!0;this.switchType="x";this.switchColor="#FFFFFF";this.rollOverColor="#CC0000";this.reversedOrder=!1;this.labelText="[[title]]";this.valueText="[[value]]";this.useMarkerColorForLabels=!1;this.rollOverGraphAlpha=1;this.textClickEnabled=!1;this.equalWidths=!0;this.backgroundColor="#FFFFFF";this.backgroundAlpha=
0;this.useGraphSettings=!1;this.showEntries=!0;d.applyTheme(this,a,this.cname)},setData:function(a){this.legendData=a;this.invalidateSize()},invalidateSize:function(){this.destroy();this.entries=[];this.valueLabels=[];var a=this.legendData;this.enabled&&(d.ifArray(a)||d.ifArray(this.data))&&this.drawLegend()},drawLegend:function(){var a=this.chart,b=this.position,c=this.width,h=a.divRealWidth,f=a.divRealHeight,e=this.div,g=this.legendData;this.data&&(g=this.data);isNaN(this.fontSize)&&(this.fontSize=
a.fontSize);if("right"==b||"left"==b)this.maxColumns=1,this.autoMargins&&(this.marginLeft=this.marginRight=10);else if(this.autoMargins){this.marginRight=a.marginRight;this.marginLeft=a.marginLeft;var k=a.autoMarginOffset;"bottom"==b?(this.marginBottom=k,this.marginTop=0):(this.marginTop=k,this.marginBottom=0)}c=void 0!==c?d.toCoordinate(c,h):a.realWidth;"outside"==b?(c=e.offsetWidth,f=e.offsetHeight,e.clientHeight&&(c=e.clientWidth,f=e.clientHeight)):(isNaN(c)||(e.style.width=c+"px"),e.className=
"amChartsLegend "+a.classNamePrefix+"-legend-div");this.divWidth=c;(b=this.container)?(b.container.innerHTML="",e.appendChild(b.container),b.width=c,b.height=f,b.setSize(c,f),b.addDefs(a)):b=new d.AmDraw(e,c,f,a);this.container=b;this.lx=0;this.ly=8;f=this.markerSize;f>this.fontSize&&(this.ly=f/2-1);0<f&&(this.lx+=f+this.markerLabelGap);this.titleWidth=0;if(f=this.title)f=d.text(this.container,f,this.color,a.fontFamily,this.fontSize,"start",!0),d.setCN(a,f,"legend-title"),f.translate(this.marginLeft,
this.marginTop+this.verticalGap+this.ly+1),a=f.getBBox(),this.titleWidth=a.width+15,this.titleHeight=a.height+6;this.index=this.maxLabelWidth=0;if(this.showEntries){for(a=0;a<g.length;a++)this.createEntry(g[a]);for(a=this.index=0;a<g.length;a++)this.createValue(g[a])}this.arrangeEntries();this.updateValues()},arrangeEntries:function(){var a=this.position,b=this.marginLeft+this.titleWidth,c=this.marginRight,h=this.marginTop,f=this.marginBottom,e=this.horizontalGap,g=this.div,k=this.divWidth,l=this.maxColumns,
m=this.verticalGap,n=this.spacing,p=k-c-b,u=0,t=0,v=this.container;this.set&&this.set.remove();var D=v.set();this.set=D;var A=v.set();D.push(A);var C=this.entries,B,w;for(w=0;w<C.length;w++){B=C[w].getBBox();var q=B.width;q>u&&(u=q);B=B.height;B>t&&(t=B)}var q=t=0,x=e,y=0,r=0;for(w=0;w<C.length;w++){var E=C[w];this.reversedOrder&&(E=C[C.length-w-1]);B=E.getBBox();var F;this.equalWidths?F=q*(u+n+this.markerLabelGap):(F=x,x=x+B.width+e+n);B.height>r&&(r=B.height);F+B.width>p&&0<w&&0!==q&&(t++,F=q=0,
x=F+B.width+e+n,y=y+r+m,r=0);E.translate(F,y);q++;!isNaN(l)&&q>=l&&(q=0,t++,y=y+r+m,x=e,r=0);A.push(E)}B=A.getBBox();l=B.height+2*m-1;"left"==a||"right"==a?(n=B.width+2*e,k=n+b+c,g.style.width=k+"px",this.ieW=k):n=k-b-c-1;c=d.polygon(this.container,[0,n,n,0],[0,0,l,l],this.backgroundColor,this.backgroundAlpha,1,this.borderColor,this.borderAlpha);d.setCN(this.chart,c,"legend-bg");D.push(c);D.translate(b,h);c.toBack();b=e;if("top"==a||"bottom"==a||"absolute"==a||"outside"==a)"center"==this.align?b=
e+(n-B.width)/2:"right"==this.align&&(b=e+n-B.width);A.translate(b,m+1);this.titleHeight>l&&(l=this.titleHeight);a=l+h+f+1;0>a&&(a=0);a>this.chart.divRealHeight&&(g.style.top="0px");g.style.height=Math.round(a)+"px";v.setSize(this.divWidth,a)},createEntry:function(a){if(!1!==a.visibleInLegend){var b=this.chart,c=a.markerType;a.legendEntryWidth=this.markerSize;c||(c=this.markerType);var h=a.color,f=a.alpha;a.legendKeyColor&&(h=a.legendKeyColor());a.legendKeyAlpha&&(f=a.legendKeyAlpha());var e;!0===
a.hidden&&(e=h=this.markerDisabledColor);var g=a.pattern,k=a.customMarker;k||(k=this.customMarker);var l=this.container,m=this.markerSize,n=0,p=0,u=m/2;if(this.useGraphSettings){c=a.type;this.switchType=void 0;if("line"==c||"step"==c||"smoothedLine"==c||"ohlc"==c)g=l.set(),a.hidden||(h=a.lineColorR,e=a.bulletBorderColorR),n=d.line(l,[0,2*m],[m/2,m/2],h,a.lineAlpha,a.lineThickness,a.dashLength),d.setCN(b,n,"graph-stroke"),g.push(n),a.bullet&&(a.hidden||(h=a.bulletColorR),n=d.bullet(l,a.bullet,a.bulletSize,
h,a.bulletAlpha,a.bulletBorderThickness,e,a.bulletBorderAlpha))&&(d.setCN(b,n,"graph-bullet"),n.translate(m+1,m/2),g.push(n)),u=0,n=m,p=m/3;else{var t;a.getGradRotation&&(t=a.getGradRotation());n=a.fillColorsR;!0===a.hidden&&(n=h);if(g=this.createMarker("rectangle",n,a.fillAlphas,a.lineThickness,h,a.lineAlpha,t,g))u=m,g.translate(u,m/2);n=m}d.setCN(b,g,"graph-"+c);d.setCN(b,g,"graph-"+a.id)}else k?g=l.image(k,0,0,m,m):(g=this.createMarker(c,h,f,void 0,void 0,void 0,void 0,g))&&g.translate(m/2,m/2);
d.setCN(b,g,"legend-marker");this.addListeners(g,a);l=l.set([g]);this.switchable&&a.switchable&&l.setAttr("cursor","pointer");void 0!==a.id&&d.setCN(b,l,"legend-item-"+a.id);d.setCN(b,l,a.className,!0);(e=this.switchType)&&"none"!=e&&0<m&&("x"==e?(c=this.createX(),c.translate(m/2,m/2)):c=this.createV(),c.dItem=a,!0!==a.hidden?"x"==e?c.hide():c.show():"x"!=e&&c.hide(),this.switchable||c.hide(),this.addListeners(c,a),a.legendSwitch=c,l.push(c),d.setCN(b,c,"legend-switch"));e=this.color;a.showBalloon&&
this.textClickEnabled&&void 0!==this.selectedColor&&(e=this.selectedColor);this.useMarkerColorForLabels&&(e=h);!0===a.hidden&&(e=this.markerDisabledColor);h=d.massReplace(this.labelText,{"[[title]]":a.title});c=this.fontSize;g&&(m<=c&&g.translate(u,m/2+this.ly-c/2+(c+2-m)/2-p),a.legendEntryWidth=g.getBBox().width);var v;h&&(h=d.fixBrakes(h),a.legendTextReal=h,v=this.labelWidth,v=isNaN(v)?d.text(this.container,h,e,b.fontFamily,c,"start"):d.wrappedText(this.container,h,e,b.fontFamily,c,"start",!1,v,
0),d.setCN(b,v,"legend-label"),v.translate(this.lx+n,this.ly),l.push(v),b=v.getBBox().width,this.maxLabelWidth<b&&(this.maxLabelWidth=b));this.entries[this.index]=l;a.legendEntry=this.entries[this.index];a.legendLabel=v;this.index++}},addListeners:function(a,b){var c=this;a&&a.mouseover(function(a){c.rollOverMarker(b,a)}).mouseout(function(a){c.rollOutMarker(b,a)}).click(function(a){c.clickMarker(b,a)})},rollOverMarker:function(a,b){this.switchable&&this.dispatch("rollOverMarker",a,b);this.dispatch("rollOverItem",
a,b)},rollOutMarker:function(a,b){this.switchable&&this.dispatch("rollOutMarker",a,b);this.dispatch("rollOutItem",a,b)},clickMarker:function(a,b){this.switchable&&(!0===a.hidden?this.dispatch("showItem",a,b):this.dispatch("hideItem",a,b));this.dispatch("clickMarker",a,b)},rollOverLabel:function(a,b){a.hidden||(this.textClickEnabled&&a.legendLabel&&a.legendLabel.attr({fill:this.rollOverColor}),this.dispatch("rollOverItem",a,b))},rollOutLabel:function(a,b){if(!a.hidden){if(this.textClickEnabled&&a.legendLabel){var c=
this.color;void 0!==this.selectedColor&&a.showBalloon&&(c=this.selectedColor);this.useMarkerColorForLabels&&(c=a.lineColor,void 0===c&&(c=a.color));a.legendLabel.attr({fill:c})}this.dispatch("rollOutItem",a,b)}},clickLabel:function(a,b){this.textClickEnabled?a.hidden||this.dispatch("clickLabel",a,b):this.switchable&&(!0===a.hidden?this.dispatch("showItem",a,b):this.dispatch("hideItem",a,b))},dispatch:function(a,b,c){b={type:a,dataItem:b,target:this,event:c,chart:this.chart};this.chart&&this.chart.handleLegendEvent(b);
this.fire(a,b)},createValue:function(a){var b=this,c=b.fontSize,h=b.chart;if(!1!==a.visibleInLegend){var f=b.maxLabelWidth;b.forceWidth&&(f=b.labelWidth);b.equalWidths||(b.valueAlign="left");"left"==b.valueAlign&&(f=a.legendEntry.getBBox().width);var e=f;if(b.valueText&&0<b.valueWidth){var g=b.color;b.useMarkerColorForValues&&(g=a.color,a.legendKeyColor&&(g=a.legendKeyColor()));!0===a.hidden&&(g=b.markerDisabledColor);var k=b.valueText,f=f+b.lx+b.markerLabelGap+b.valueWidth,l="end";"left"==b.valueAlign&&
(f-=b.valueWidth,l="start");g=d.text(b.container,k,g,b.chart.fontFamily,c,l);d.setCN(h,g,"legend-value");g.translate(f,b.ly);b.entries[b.index].push(g);e+=b.valueWidth+2*b.markerLabelGap;g.dItem=a;b.valueLabels.push(g)}b.index++;h=b.markerSize;h<c+7&&(h=c+7,d.VML&&(h+=3));c=b.container.rect(a.legendEntryWidth,0,e,h,0,0).attr({stroke:"none",fill:"#fff","fill-opacity":.005});c.dItem=a;b.entries[b.index-1].push(c);c.mouseover(function(c){b.rollOverLabel(a,c)}).mouseout(function(c){b.rollOutLabel(a,c)}).click(function(c){b.clickLabel(a,
c)})}},createV:function(){var a=this.markerSize;return d.polygon(this.container,[a/5,a/2,a-a/5,a/2],[a/3,a-a/5,a/5,a/1.7],this.switchColor)},createX:function(){var a=(this.markerSize-4)/2,b={stroke:this.switchColor,"stroke-width":3},c=this.container,h=d.line(c,[-a,a],[-a,a]).attr(b),a=d.line(c,[-a,a],[a,-a]).attr(b);return this.container.set([h,a])},createMarker:function(a,b,c,h,f,e,g,k){var l=this.markerSize,m=this.container;f||(f=this.markerBorderColor);f||(f=b);isNaN(h)&&(h=this.markerBorderThickness);
isNaN(e)&&(e=this.markerBorderAlpha);return d.bullet(m,a,l,b,c,h,f,e,l,g,k,this.chart.path)},validateNow:function(){this.invalidateSize()},updateValues:function(){var a=this.valueLabels,b=this.chart,c,h=this.data;for(c=0;c<a.length;c++){var f=a[c],e=f.dItem,g=" ";if(h)e.value?f.text(e.value):f.text("");else{var k;if(void 0!==e.type){k=e.currentDataItem;var l=this.periodValueText;e.legendPeriodValueText&&(l=e.legendPeriodValueText);k?(g=this.valueText,e.legendValueText&&(g=e.legendValueText),g=b.formatString(g,
k)):l&&b.formatPeriodString&&(l=d.massReplace(l,{"[[title]]":e.title}),g=b.formatPeriodString(l,e))}else g=b.formatString(this.valueText,e);if(l=this.valueFunction)k&&(e=k),g=l(e,g);f.text(g)}}},renderFix:function(){if(!d.VML){var a=this.container;a&&a.renderFix()}},destroy:function(){this.div.innerHTML="";d.remove(this.set)}})})();(function(){var d=window.AmCharts;d.AmMap=d.Class({inherits:d.AmChart,construct:function(a){this.cname="AmMap";this.type="map";this.theme=a;this.svgNotSupported="This browser doesn't support SVG. Use Chrome, Firefox, Internet Explorer 9 or later.";this.createEvents("rollOverMapObject","rollOutMapObject","clickMapObject","selectedObjectChanged","homeButtonClicked","zoomCompleted","dragCompleted","positionChanged","writeDevInfo","click");this.zoomDuration=1;this.zoomControl=new d.ZoomControl(a);this.fitMapToContainer=
!0;this.mouseWheelZoomEnabled=this.backgroundZoomsToTop=!1;this.allowClickOnSelectedObject=this.useHandCursorOnClickableOjects=this.showBalloonOnSelectedObject=!0;this.showObjectsAfterZoom=this.wheelBusy=!1;this.zoomOnDoubleClick=this.useObjectColorForBalloon=!0;this.allowMultipleDescriptionWindows=!1;this.dragMap=this.centerMap=this.linesAboveImages=!0;this.colorSteps=5;this.showAreasInList=!0;this.showLinesInList=this.showImagesInList=!1;this.areasProcessor=new d.AreasProcessor(this);this.areasSettings=
new d.AreasSettings(a);this.imagesProcessor=new d.ImagesProcessor(this);this.imagesSettings=new d.ImagesSettings(a);this.linesProcessor=new d.LinesProcessor(this);this.linesSettings=new d.LinesSettings(a);this.initialTouchZoom=1;this.showDescriptionOnHover=!1;d.AmMap.base.construct.call(this,a);this.creditsPosition="bottom-left";this.product="ammap";this.areasClasses={};d.applyTheme(this,a,this.cname)},initChart:function(){this.zoomInstantly=!0;var a=this.container;if(this.sizeChanged&&d.hasSVG&&
this.chartCreated){this.freeLabelsSet&&this.freeLabelsSet.remove();this.freeLabelsSet=a.set();this.container.setSize(this.realWidth,this.realHeight);this.resizeMap();this.drawBackground();this.redrawLabels();this.drawTitles();this.processObjects();this.rescaleObjects();this.zoomControl.init(this,a);this.drawBg();var b=this.smallMap;b&&b.init(this,a);(b=this.valueLegend)&&b.init(this,a);this.sizeChanged=!1;this.zoomToLongLat(this.zLevelTemp,this.zLongTemp,this.zLatTemp,!0);this.previousWidth=this.realWidth;
this.previousHeight=this.realHeight;this.updateSmallMap();this.linkSet.toFront();this.zoomControl.update()}else(d.AmMap.base.initChart.call(this),d.hasSVG)?(this.dataChanged&&(this.parseData(),this.dispatchDataUpdated=!0,this.dataChanged=!1,a=this.legend)&&(a.position="absolute",a.invalidateSize()),this.createDescriptionsDiv(),this.svgAreas=[],this.svgAreasById={},this.drawChart()):(this.chartDiv.style.textAlign="",this.chartDiv.setAttribute("class","ammapAlert"),this.chartDiv.innerHTML=this.svgNotSupported,
this.fire("failed",{type:"failed",chart:this}))},storeTemp:function(){var a=this.zoomLongitude();isNaN(a)||(this.zLongTemp=a);a=this.zoomLatitude();isNaN(a)||(this.zLatTemp=a);a=this.zoomLevel();isNaN(a)||(this.zLevelTemp=a)},invalidateSize:function(){this.storeTemp();d.AmMap.base.invalidateSize.call(this)},validateSize:function(){d.hasSVG&&0<this.realWidth&&0<this.realHeight&&this.storeTemp();d.AmMap.base.validateSize.call(this)},handleWheelReal:function(a){if(!this.wheelBusy){this.stopAnimation();
var b=this.zoomLevel(),c=this.zoomControl,h=c.zoomFactor;this.wheelBusy=!0;a=d.fitToBounds(0<a?b*h:b/h,c.minZoomLevel,c.maxZoomLevel);h=this.mouseX/this.mapWidth;c=this.mouseY/this.mapHeight;h=(this.zoomX()-h)*(a/b)+h;b=(this.zoomY()-c)*(a/b)+c;this.zoomTo(a,h,b)}},addLegend:function(a,b){a.position="absolute";a.autoMargins=!1;a.valueWidth=0;a.switchable=!1;d.AmMap.base.addLegend.call(this,a,b);void 0===a.enabled&&(a.enabled=!0);return a},handleLegendEvent:function(){},createDescriptionsDiv:function(){if(!this.descriptionsDiv){var a=
document.createElement("div"),b=a.style;b.position="absolute";b.left="0px";b.top="0px";this.descriptionsDiv=a}this.containerDiv.appendChild(this.descriptionsDiv)},drawChart:function(){d.AmMap.base.drawChart.call(this);var a=this.dataProvider;this.dataProvider=a=d.extend(a,new d.MapData,!0);this.areasSettings=d.processObject(this.areasSettings,d.AreasSettings,this.theme);this.imagesSettings=d.processObject(this.imagesSettings,d.ImagesSettings,this.theme);this.linesSettings=d.processObject(this.linesSettings,
d.LinesSettings,this.theme);var b=this.container;this.mapContainer&&this.mapContainer.remove();this.mapContainer=b.set();this.graphsSet.push(this.mapContainer);var c;a.map&&(c=d.maps[a.map]);a.mapVar&&(c=a.mapVar);c?(this.svgData=c.svg,this.getBounds(),this.buildEverything()):(a=a.mapURL)&&this.loadXml(a);this.balloonsSet.toFront()},drawBg:function(){var a=this;a.background.click(function(){a.handleBackgroundClick()})},buildEverything:function(){if(0<this.realWidth&&0<this.realHeight){var a=this.container;
this.zoomControl=d.processObject(this.zoomControl,d.ZoomControl,this.theme);this.zoomControl.init(this,a);this.drawBg();this.buildSVGMap();var b=this.smallMap;b&&(b=this.smallMap=d.processObject(this.smallMap,d.SmallMap,this.theme),b.init(this,a));b=this.dataProvider;isNaN(b.zoomX)&&isNaN(b.zoomY)&&isNaN(b.zoomLatitude)&&isNaN(b.zoomLongitude)&&(this.centerMap?(b.zoomLatitude=this.coordinateToLatitude(this.mapHeight/2),b.zoomLongitude=this.coordinateToLongitude(this.mapWidth/2)):(b.zoomX=0,b.zoomY=
0),this.zoomInstantly=!0);this.selectObject(this.dataProvider);this.processAreas();if(b=this.valueLegend)this.valueLegend=b=d.processObject(b,d.ValueLegend,this.theme),b.init(this,a);this.objectList&&(a=this.objectList=d.processObject(this.objectList,d.ObjectList))&&(this.clearObjectList(),a.init(this));this.dispDUpd();this.linkSet.toFront()}else this.cleanChart()},hideGroup:function(a){this.showHideGroup(a,!1)},showGroup:function(a){this.showHideGroup(a,!0)},showHideGroup:function(a,b){this.showHideReal(this.imagesProcessor.allObjects,
a,b);this.showHideReal(this.areasProcessor.allObjects,a,b);this.showHideReal(this.linesProcessor.allObjects,a,b)},showHideReal:function(a,b,c){var d;for(d=0;d<a.length;d++){var f=a[d];if(f.groupId==b){var e=f.displayObject;e&&(c?(f.hidden=!1,e.show()):(f.hidden=!0,e.hide()))}}},update:function(){d.hasSVG&&(d.AmMap.base.update.call(this),this.zoomControl&&this.zoomControl.update())},animateMap:function(){var a=this;a.totalFrames=1E3*a.zoomDuration/d.updateRate;a.totalFrames+=1;a.frame=0;a.tweenPercent=
0;a.balloon.hide(0);setTimeout(function(){a.updateSize.call(a)},d.updateRate)},updateSize:function(){var a=this,b=a.totalFrames;a.preventHover=!0;a.frame<=b?(a.frame++,b=d.easeOutSine(0,a.frame,0,1,b),1<=b?(b=1,a.preventHover=!1,a.wheelBusy=!1):setTimeout(function(){a.updateSize.call(a)},d.updateRate),.8<b&&(a.preventHover=!1)):(b=1,a.preventHover=!1,a.wheelBusy=!1);a.tweenPercent=b;a.rescaleMapAndObjects()},rescaleMapAndObjects:function(){var a=this.initialScale,b=this.initialX,c=this.initialY,d=
this.tweenPercent,a=a+(this.finalScale-a)*d;this.mapContainer.translate(b+(this.finalX-b)*d,c+(this.finalY-c)*d,a);if(this.areasSettings.adjustOutlineThickness)for(b=this.dataProvider.areas,c=0;c<b.length;c++){var f=b[c],e=f.displayObject;e&&e.setAttr("stroke-width",f.outlineThicknessReal/a)}this.rescaleObjects();this.positionChanged();this.updateSmallMap();1==d&&(d={type:"zoomCompleted",chart:this},this.fire(d.type,d))},updateSmallMap:function(){this.smallMap&&this.smallMap.update()},rescaleObjects:function(){var a=
this.mapContainer.scale,b=this.imagesProcessor.objectsToResize,c;for(c=0;c<b.length;c++){var d=b[c].image;d.translate(d.x,d.y,b[c].scale/a,!0)}b=this.linesProcessor;if(d=b.linesToResize)for(c=0;c<d.length;c++){var f=d[c];f.line.setAttr("stroke-width",f.thickness/a)}b=b.objectsToResize;for(c=0;c<b.length;c++)d=b[c],d.translate(d.x,d.y,1/a,!0)},handleTouchEnd:function(a){this.initialDistance=NaN;this.mouseIsDown=this.isDragging=!1;d.AmMap.base.handleTouchEnd.call(this,a)},handleMouseDown:function(a){d.resetMouseOver();
this.mouseIsDown=this.mouseIsOver=!0;this.balloon.hide(0);a&&this.mouseIsOver&&a.preventDefault&&this.panEventsEnabled&&a.preventDefault();if(this.chartCreated&&!this.preventHover&&(this.initialTouchZoom=this.zoomLevel(),this.dragMap&&(this.stopAnimation(),this.mapContainerClickX=this.mapContainer.x,this.mapContainerClickY=this.mapContainer.y),a||(a=window.event),a.shiftKey&&!0===this.developerMode&&this.getDevInfo(),a&&a.touches)){var b=this.mouseX,c=this.mouseY,h=a.touches.item(1);h&&this.panEventsEnabled&&
this.boundingRect&&(a=h.clientX-this.boundingRect.left,h=h.clientY-this.boundingRect.top,this.middleXP=(b+(a-b)/2)/this.realWidth,this.middleYP=(c+(h-c)/2)/this.realHeight,this.initialDistance=Math.sqrt(Math.pow(a-b,2)+Math.pow(h-c,2)))}},stopDrag:function(){this.isDragging=!1},handleReleaseOutside:function(){if(d.isModern&&(this.mouseIsDown=!1,!this.preventHover)){this.stopDrag();var a=this.zoomControl;a&&a.draggerUp&&a.draggerUp();this.mapWasDragged=!1;var a=this.mapContainer,b=this.mapContainerClickX,
c=this.mapContainerClickY;isNaN(b)||isNaN(c)||!(2<Math.abs(a.x-b)||Math.abs(a.y-c))||(this.mapWasDragged=!0,a={type:"dragCompleted",zoomX:this.zoomX(),zoomY:this.zoomY(),zoomLevel:this.zoomLevel(),chart:this},this.fire(a.type,a));!this.mouseIsOver||this.mapWasDragged||this.skipClick||(a={type:"click",x:this.mouseX,y:this.mouseY,chart:this},this.fire(a.type,a),this.skipClick=!1);this.mapContainerClickY=this.mapContainerClickX=NaN;this.objectWasClicked=!1;this.zoomOnDoubleClick&&this.mouseIsOver&&(a=
(new Date).getTime(),200>a-this.previousClickTime&&40<a-this.previousClickTime&&this.doDoubleClickZoom(),this.previousClickTime=a)}},resetPinch:function(){this.mapWasPinched=!1},handleMouseMove:function(a){var b=this;d.AmMap.base.handleMouseMove.call(b,a);b.panEventsEnabled&&b.mouseIsOver&&a&&a.preventDefault&&a.preventDefault();var c=b.previuosMouseX,h=b.previuosMouseY,f=b.mouseX,e=b.mouseY,g=b.zoomControl;isNaN(c)&&(c=f);isNaN(h)&&(h=e);b.mouse2X=NaN;b.mouse2Y=NaN;a&&a.touches&&(a=a.touches.item(1))&&
b.panEventsEnabled&&b.boundingRect&&(b.mouse2X=a.clientX-b.boundingRect.left,b.mouse2Y=a.clientY-b.boundingRect.top);if(a=b.mapContainer){var k=b.mouse2X,l=b.mouse2Y;b.pinchTO&&clearTimeout(b.pinchTO);b.pinchTO=setTimeout(function(){b.resetPinch.call(b)},1E3);var m=b.realHeight,n=b.realWidth,p=b.mapWidth,u=b.mapHeight;b.mouseIsDown&&b.dragMap&&(5<Math.abs(b.previuosMouseX-b.mouseX)||5<Math.abs(b.previuosMouseY-b.mouseY))&&(b.isDragging=!0);if(!isNaN(k)){b.stopDrag();var t=Math.sqrt(Math.pow(k-f,2)+
Math.pow(l-e,2)),v=b.initialDistance;isNaN(v)&&(v=Math.sqrt(Math.pow(k-f,2)+Math.pow(l-e,2)));if(!isNaN(v)){var k=b.initialTouchZoom*t/v,k=d.fitToBounds(k,g.minZoomLevel,g.maxZoomLevel),g=b.zoomLevel(),v=b.middleXP,l=b.middleYP,t=m/u,D=n/p,v=(b.zoomX()-v*D)*(k/g)+v*D,l=(b.zoomY()-l*t)*(k/g)+l*t;.1<Math.abs(k-g)&&(b.zoomTo(k,v,l,!0),b.mapWasPinched=!0,clearTimeout(b.pinchTO))}}k=a.scale;b.isDragging&&(b.balloon.hide(0),b.positionChanged(),c=a.x+(f-c),h=a.y+(e-h),b.preventDragOut&&(u=-u*k+m/2,m/=2,
c=d.fitToBounds(c,-p*k+n/2,n/2),h=d.fitToBounds(h,u,m)),a.translate(c,h,k),b.updateSmallMap());b.previuosMouseX=f;b.previuosMouseY=e}},selectObject:function(a){var b=this;a||(a=b.dataProvider);a.isOver=!1;var c=a.linkToObject;"string"==typeof c&&(c=b.getObjectById(c));a.useTargetsZoomValues&&c&&(a.zoomX=c.zoomX,a.zoomY=c.zoomY,a.zoomLatitude=c.zoomLatitude,a.zoomLongitude=c.zoomLongitude,a.zoomLevel=c.zoomLevel);var h=b.selectedObject;h&&b.returnInitialColor(h);b.selectedObject=a;var f=!1,e,g;"MapArea"==
a.objectType&&(a.autoZoomReal&&(f=!0),e=b.areasSettings.selectedOutlineColor,g=b.areasSettings.selectedOutlineThickness);if(c&&!f&&("string"==typeof c&&(c=b.getObjectById(c)),isNaN(a.zoomLevel)&&isNaN(a.zoomX)&&isNaN(a.zoomY))){if(b.extendMapData(c))return;b.selectObject(c);return}b.allowMultipleDescriptionWindows||b.closeAllDescriptions();clearTimeout(b.selectedObjectTimeOut);clearTimeout(b.processObjectsTimeOut);c=b.zoomDuration;!f&&isNaN(a.zoomLevel)&&isNaN(a.zoomX)&&isNaN(a.zoomY)?(b.showDescriptionAndGetUrl(),
b.processObjects()):(b.selectedObjectTimeOut=setTimeout(function(){b.showDescriptionAndGetUrl.call(b)},1E3*c+200),b.showObjectsAfterZoom?b.processObjectsTimeOut=setTimeout(function(){b.processObjects.call(b)},1E3*c+200):b.processObjects());c=a.displayObject;f=a.selectedColorReal;"MapImage"==a.objectType&&(e=b.imagesSettings.selectedOutlineColor,g=b.imagesSettings.selectedOutlineThickness,c=a.image);if(c){if(d.setCN(b,c,"selected-object"),a.bringForwardOnHover&&c.toFront(),!a.preserveOriginalAttributes){c.setAttr("stroke",
a.outlineColorReal);void 0!==f&&c.setAttr("fill",f);void 0!==e&&c.setAttr("stroke",e);void 0!==g&&c.setAttr("stroke-width",g);if("MapLine"==a.objectType){var k=a.lineSvg;k&&k.setAttr("stroke",f);if(k=a.arrowSvg)k.setAttr("fill",f),k.setAttr("stroke",f)}if(k=a.imageLabel){var l=a.selectedLabelColorReal;void 0!==l&&k.setAttr("fill",l)}a.selectable||(c.setAttr("cursor","default"),k&&k.setAttr("cursor","default"))}}else b.returnInitialColorReal(a);if(c=a.groupId)for(k=b.getGroupById(c),l=0;l<k.length;l++){var m=
k[l];m.isOver=!1;c=m.displayObject;"MapImage"==m.objectType&&(c=m.image);if(c){var n=m.selectedColorReal;void 0!==n&&c.setAttr("fill",n);void 0!==e&&c.setAttr("stroke",e);void 0!==g&&c.setAttr("stroke-width",g);"MapLine"==m.objectType&&((c=m.lineSvg)&&c.setAttr("stroke",f),c=m.arrowSvg)&&(c.setAttr("fill",f),c.setAttr("stroke",f))}}b.zoomToSelectedObject();h!=a&&(a={type:"selectedObjectChanged",chart:b},b.fire(a.type,a))},returnInitialColor:function(a,b){this.returnInitialColorReal(a);b&&(a.isFirst=
!1);if(this.selectedObject.bringForwardOnHover){var c=this.selectedObject.displayObject;c&&c.toFront()}if(c=a.groupId){var c=this.getGroupById(c),d;for(d=0;d<c.length;d++)this.returnInitialColorReal(c[d]),b&&(c[d].isFirst=!1)}},closeAllDescriptions:function(){this.descriptionsDiv.innerHTML=""},returnInitialColorReal:function(a){a.isOver=!1;var b=a.displayObject;if(b){b.toPrevious();if("MapImage"==a.objectType){var c=a.tempScale;isNaN(c)||b.translate(b.x,b.y,c,!0);a.tempScale=NaN;b=a.image}c=a.colorReal;
if("MapLine"==a.objectType){var d=a.lineSvg;d&&d.setAttr("stroke",c);if(d=a.arrowSvg)d.setAttr("fill",c),d.setAttr("stroke",c)}var d=a.alphaReal,f=a.outlineAlphaReal,e=a.outlineThicknessReal,g=a.outlineColorReal;if(a.showAsSelected){var c=a.selectedColorReal,k,l;"MapImage"==a.objectType&&(k=this.imagesSettings.selectedOutlineColor,l=this.imagesSettings.selectedOutlineThickness);"MapArea"==a.objectType&&(k=this.areasSettings.selectedOutlineColor,l=this.areasSettings.selectedOutlineThickness);void 0!==
k&&(g=k);void 0!==l&&(e=l)}"bubble"==a.type&&(c=void 0);void 0!==c&&b.setAttr("fill",c);if(k=a.image)k.setAttr("fill",c),k.setAttr("stroke",g),k.setAttr("stroke-width",e),k.setAttr("fill-opacity",d),k.setAttr("stroke-opacity",f);"MapArea"==a.objectType&&(c=1,this.areasSettings.adjustOutlineThickness&&(c=this.zoomLevel()),b.setAttr("stroke",g),b.setAttr("stroke-width",e/c),b.setAttr("fill-opacity",d),b.setAttr("stroke-opacity",f));(c=a.pattern)&&b.pattern(c,this.mapScale,this.path);(b=a.imageLabel)&&
!a.labelInactive&&(a.showAsSelected&&void 0!==a.selectedLabelColor?b.setAttr("fill",a.selectedLabelColor):b.setAttr("fill",a.labelColorReal))}},zoomToRectangle:function(a,b,c,h){var f=this.realWidth,e=this.realHeight,g=this.mapSet.scale,k=this.zoomControl,f=d.fitToBounds(c/f>h/e?.8*f/(c*g):.8*e/(h*g),k.minZoomLevel,k.maxZoomLevel);this.zoomToMapXY(f,(a+c/2)*g,(b+h/2)*g)},zoomToLatLongRectangle:function(a,b,c,h){var f=this.dataProvider,e=this.zoomControl,g=Math.abs(c-a),k=Math.abs(b-h),l=Math.abs(f.rightLongitude-
f.leftLongitude),f=Math.abs(f.topLatitude-f.bottomLatitude),e=d.fitToBounds(g/l>k/f?.8*l/g:.8*f/k,e.minZoomLevel,e.maxZoomLevel);this.zoomToLongLat(e,a+(c-a)/2,h+(b-h)/2)},getGroupById:function(a){var b=[];this.getGroup(this.imagesProcessor.allObjects,a,b);this.getGroup(this.linesProcessor.allObjects,a,b);this.getGroup(this.areasProcessor.allObjects,a,b);return b},zoomToGroup:function(a){a="object"==typeof a?a:this.getGroupById(a);var b,c,d,f,e;for(e=0;e<a.length;e++){var g=a[e].displayObject;if(g){var k=
g.getBBox(),g=k.y,l=k.y+k.height,m=k.x,k=k.x+k.width;if(g<b||isNaN(b))b=g;if(l>f||isNaN(f))f=l;if(m<c||isNaN(c))c=m;if(k>d||isNaN(d))d=k}}a=this.mapSet.getBBox();c-=a.x;d-=a.x;f-=a.y;b-=a.y;this.zoomToRectangle(c,b,d-c,f-b)},getGroup:function(a,b,c){if(a){var d;for(d=0;d<a.length;d++){var f=a[d];f.groupId==b&&c.push(f)}}},zoomToStageXY:function(a,b,c,h){if(!this.objectWasClicked){var f=this.zoomControl;a=d.fitToBounds(a,f.minZoomLevel,f.maxZoomLevel);f=this.zoomLevel();c=this.coordinateToLatitude((c-
this.mapContainer.y)/f);b=this.coordinateToLongitude((b-this.mapContainer.x)/f);this.zoomToLongLat(a,b,c,h)}},zoomToLongLat:function(a,b,c,d){b=this.longitudeToCoordinate(b);c=this.latitudeToCoordinate(c);this.zoomToMapXY(a,b,c,d)},zoomToMapXY:function(a,b,c,d){var f=this.mapWidth,e=this.mapHeight;this.zoomTo(a,-(b/f)*a+this.realWidth/f/2,-(c/e)*a+this.realHeight/e/2,d)},zoomToObject:function(a){if(a){var b=a.zoomLatitude,c=a.zoomLongitude,h=a.zoomLevel,f=this.zoomInstantly,e=a.zoomX,g=a.zoomY,k=
this.realWidth,l=this.realHeight;isNaN(h)||(isNaN(b)||isNaN(c)?this.zoomTo(h,e,g,f):this.zoomToLongLat(h,c,b,f));this.zoomInstantly=!1;"MapImage"==a.objectType&&isNaN(a.zoomX)&&isNaN(a.zoomY)&&isNaN(a.zoomLatitude)&&isNaN(a.zoomLongitude)&&!isNaN(a.latitude)&&!isNaN(a.longitude)&&this.zoomToLongLat(a.zoomLevel,a.longitude,a.latitude);"MapArea"==a.objectType&&(e=a.displayObject.getBBox(),b=this.mapScale,c=e.x*b,h=e.y*b,f=e.width*b,e=e.height*b,k=a.autoZoomReal&&isNaN(a.zoomLevel)?f/k>e/l?.8*k/f:.8*
l/e:a.zoomLevel,l=this.zoomControl,k=d.fitToBounds(k,l.minZoomLevel,l.maxZoomLevel),isNaN(a.zoomX)&&isNaN(a.zoomY)&&isNaN(a.zoomLatitude)&&isNaN(a.zoomLongitude)&&(a=this.mapSet.getBBox(),this.zoomToMapXY(k,-a.x*b+c+f/2,-a.y*b+h+e/2)));this.zoomControl.update()}},zoomToSelectedObject:function(){this.zoomToObject(this.selectedObject)},zoomTo:function(a,b,c,h){var f=this.zoomControl;a=d.fitToBounds(a,f.minZoomLevel,f.maxZoomLevel);f=this.zoomLevel();isNaN(b)&&(b=this.realWidth/this.mapWidth,b=(this.zoomX()-
.5*b)*(a/f)+.5*b);isNaN(c)&&(c=this.realHeight/this.mapHeight,c=(this.zoomY()-.5*c)*(a/f)+.5*c);this.stopAnimation();isNaN(a)||(f=this.mapContainer,this.initialX=f.x,this.initialY=f.y,this.initialScale=f.scale,this.finalX=this.mapWidth*b,this.finalY=this.mapHeight*c,this.finalScale=a,this.finalX!=this.initialX||this.finalY!=this.initialY||this.finalScale!=this.initialScale?h?(this.tweenPercent=1,this.rescaleMapAndObjects(),this.wheelBusy=!1):this.animateMap():this.wheelBusy=!1)},loadXml:function(a){var b;
window.XMLHttpRequest&&(b=new XMLHttpRequest);b.overrideMimeType&&b.overrideMimeType("text/xml");b.open("GET",a,!1);b.send();this.parseXMLObject(b.responseXML);this.svgData&&this.buildEverything()},stopAnimation:function(){this.frame=this.totalFrames},processObjects:function(){var a=this.container,b=this.stageImagesContainer;b&&b.remove();this.stageImagesContainer=b=a.set();this.trendLinesSet.push(b);var c=this.stageLinesContainer;c&&c.remove();this.stageLinesContainer=c=a.set();this.trendLinesSet.push(c);
var d=this.mapImagesContainer;d&&d.remove();this.mapImagesContainer=d=a.set();this.mapContainer.push(d);var f=this.mapLinesContainer;f&&f.remove();this.mapLinesContainer=f=a.set();this.mapContainer.push(f);this.linesAboveImages?(d.toFront(),b.toFront(),f.toFront(),c.toFront()):(f.toFront(),c.toFront(),d.toFront(),b.toFront());if(a=this.selectedObject)this.imagesProcessor.reset(),this.linesProcessor.reset(),this.linesAboveImages?(this.imagesProcessor.process(a),this.linesProcessor.process(a)):(this.linesProcessor.process(a),
this.imagesProcessor.process(a));this.rescaleObjects()},processAreas:function(){this.areasProcessor.process(this.dataProvider)},buildSVGMap:function(){var a=this.svgData.g.path,b=this.container,c=b.set();void 0===a.length&&(a=[a]);var d;for(d=0;d<a.length;d++){var f=a[d],e=f.d,g=f.title;f.titleTr&&(g=f.titleTr);e=b.path(e);e.id=f.id;if(this.areasSettings.preserveOriginalAttributes){e.customAttr={};for(var k in f)"d"!=k&&"id"!=k&&"title"!=k&&(e.customAttr[k]=f[k])}this.svgAreasById[f.id]={area:e,title:g,
className:f["class"]};this.svgAreas.push(e);c.push(e)}this.mapSet=c;this.mapContainer.push(c);this.resizeMap()},addObjectEventListeners:function(a,b){var c=this;a.mouseup(function(a){c.clickMapObject(b,a)}).mouseover(function(a){c.rollOverMapObject(b,!0,a)}).mouseout(function(a){c.rollOutMapObject(b,a)}).touchend(function(a){c.clickMapObject(b,a)}).touchstart(function(a){c.rollOverMapObject(b,!0,a)})},checkIfSelected:function(a){var b=this.selectedObject;if(b==a)return!0;if(b=b.groupId){var b=this.getGroupById(b),
c;for(c=0;c<b.length;c++)if(b[c]==a)return!0}return!1},clearMap:function(){this.chartDiv.innerHTML="";this.clearObjectList()},clearObjectList:function(){var a=this.objectList;a&&a.div&&(a.div.innerHTML="")},checkIfLast:function(a){if(a){var b=a.parentNode;if(b&&b.lastChild==a)return!0}return!1},showAsRolledOver:function(a){var b=a.displayObject;if(!a.showAsSelected&&b&&!a.isOver){b.node.onmouseout=function(){};b.node.onmouseover=function(){};b.node.onclick=function(){};!a.isFirst&&a.bringForwardOnHover&&
(b.toFront(),a.isFirst=!0);var c=a.rollOverColorReal,d;a.preserveOriginalAttributes&&(c=void 0);if(void 0!=c)if("MapImage"==a.objectType)(d=a.image)&&d.setAttr("fill",c);else if("MapLine"==a.objectType){if((d=a.lineSvg)&&d.setAttr("stroke",c),d=a.arrowSvg)d.setAttr("fill",c),d.setAttr("stroke",c)}else b.setAttr("fill",c);(c=a.imageLabel)&&!a.labelInactive&&(d=a.labelRollOverColorReal,void 0!=d&&c.setAttr("fill",d));c=a.rollOverOutlineColorReal;void 0!=c&&("MapImage"==a.objectType?(d=a.image)&&d.setAttr("stroke",
c):b.setAttr("stroke",c));"MapImage"==a.objectType?(c=this.imagesSettings.rollOverOutlineThickness,(d=a.image)&&(isNaN(c)||d.setAttr("stroke-width",c))):(c=this.areasSettings.rollOverOutlineThickness,isNaN(c)||b.setAttr("stroke-width",c));if("MapArea"==a.objectType){c=this.areasSettings;d=a.rollOverAlphaReal;isNaN(d)||b.setAttr("fill-opacity",d);d=c.rollOverOutlineAlpha;isNaN(d)||b.setAttr("stroke-opacity",d);d=1;this.areasSettings.adjustOutlineThickness&&(d=this.zoomLevel());var f=c.rollOverOutlineThickness;
isNaN(f)||b.setAttr("stroke-width",f/d);(c=c.rollOverPattern)&&b.pattern(c,this.mapScale,this.path)}"MapImage"==a.objectType&&(c=a.rollOverScaleReal,isNaN(c)||1==c||(d=b.scale,isNaN(d)&&(d=1),a.tempScale=d,b.translate(b.x,b.y,d*c,!0)));this.useHandCursorOnClickableOjects&&this.checkIfClickable(a)&&b.setAttr("cursor","pointer");this.addObjectEventListeners(b,a);a.isOver=!0}},rollOverMapObject:function(a,b,c){if(this.chartCreated){this.handleMouseMove();var d=this.previouslyHovered;d&&d!=a?(!1===this.checkIfSelected(d)&&
(this.returnInitialColor(d,!0),this.previouslyHovered=null),this.balloon.hide(0)):clearTimeout(this.hoverInt);if(!this.preventHover){if(!1===this.checkIfSelected(a)){if(d=a.groupId){var d=this.getGroupById(d),f;for(f=0;f<d.length;f++)d[f]!=a&&this.showAsRolledOver(d[f])}this.showAsRolledOver(a)}else(d=a.displayObject)&&(this.allowClickOnSelectedObject?d.setAttr("cursor","pointer"):d.setAttr("cursor","default"));if(this.showDescriptionOnHover)this.showDescription(a);else if((this.showBalloonOnSelectedObject||
!this.checkIfSelected(a))&&!1!==b&&(f=this.balloon,b=a.colorReal,d="",void 0!==b&&this.useObjectColorForBalloon||(b=f.fillColor),(f=a.balloonTextReal)&&(d=this.formatString(f,a)),this.balloonLabelFunction&&(d=this.balloonLabelFunction(a,this)),d&&""!==d)){var e,g;"MapArea"==a.objectType&&(g=this.getAreaCenterLatitude(a),e=this.getAreaCenterLongitude(a),g=this.latitudeToY(g),e=this.longitudeToX(e));"MapImage"==a.objectType&&(e=a.displayObject.x*this.zoomLevel()+this.mapContainer.x,g=a.displayObject.y*
this.zoomLevel()+this.mapContainer.y);this.showBalloon(d,b,this.mouseIsOver,e,g)}c={type:"rollOverMapObject",mapObject:a,chart:this,event:c};this.fire(c.type,c);this.previouslyHovered=a}}},longitudeToX:function(a){return this.longitudeToCoordinate(a)*this.zoomLevel()+this.mapContainer.x},latitudeToY:function(a){return this.latitudeToCoordinate(a)*this.zoomLevel()+this.mapContainer.y},rollOutMapObject:function(a,b){this.hideBalloon();if(this.chartCreated&&a.isOver){this.checkIfSelected(a)||this.returnInitialColor(a);
var c={type:"rollOutMapObject",mapObject:a,chart:this,event:b};this.fire(c.type,c)}},formatString:function(a,b){var c=this.nf,h=this.pf,f=b.title;b.titleTr&&(f=b.titleTr);void 0==f&&(f="");var e=b.value,e=isNaN(e)?"":d.formatNumber(e,c),c=b.percents,c=isNaN(c)?"":d.formatNumber(c,h),h=b.description;void 0==h&&(h="");var g=b.customData;void 0==g&&(g="");return a=d.massReplace(a,{"[[title]]":f,"[[value]]":e,"[[percent]]":c,"[[description]]":h,"[[customData]]":g})},clickMapObject:function(a,b){if(this.chartCreated&&
!this.preventHover&&!this.mapWasDragged&&this.checkIfClickable(a)&&!this.mapWasPinched){this.selectObject(a);var c={type:"clickMapObject",mapObject:a,chart:this,event:b};this.fire(c.type,c);this.objectWasClicked=!0}},checkIfClickable:function(a){var b=this.allowClickOnSelectedObject;return this.selectedObject==a&&b?!0:this.selectedObject!=a||b?!0===a.selectable||"MapArea"==a.objectType&&a.autoZoomReal||a.url||a.linkToObject||0<a.images.length||0<a.lines.length||!isNaN(a.zoomLevel)||!isNaN(a.zoomX)||
!isNaN(a.zoomY)||a.description?!0:!1:!1},resizeMap:function(){var a=this.mapSet;if(a){var b=1,c=a.getBBox(),d=this.realWidth,f=this.realHeight,e=c.width,g=c.height;this.fitMapToContainer&&(b=e/d>g/f?d/e:f/g);a.translate(-c.x*b,-c.y*b,b);this.mapScale=b;this.mapHeight=g*b;this.mapWidth=e*b}},zoomIn:function(){this.skipClick=!0;var a=this.zoomLevel()*this.zoomControl.zoomFactor;this.zoomTo(a)},zoomOut:function(){this.skipClick=!0;var a=this.zoomLevel()/this.zoomControl.zoomFactor;this.zoomTo(a)},moveLeft:function(){this.skipClick=
!0;var a=this.zoomX()+this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),a,this.zoomY())},moveRight:function(){this.skipClick=!0;var a=this.zoomX()-this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),a,this.zoomY())},moveUp:function(){this.skipClick=!0;var a=this.zoomY()+this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),this.zoomX(),a)},moveDown:function(){this.skipClick=!0;var a=this.zoomY()-this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),this.zoomX(),a)},zoomX:function(){return this.mapSet?
Math.round(1E4*this.mapContainer.x/this.mapWidth)/1E4:NaN},zoomY:function(){return this.mapSet?Math.round(1E4*this.mapContainer.y/this.mapHeight)/1E4:NaN},goHome:function(){this.selectObject(this.dataProvider);var a={type:"homeButtonClicked",chart:this};this.fire(a.type,a)},zoomLevel:function(){return Math.round(1E5*this.mapContainer.scale)/1E5},showDescriptionAndGetUrl:function(){var a=this.selectedObject;if(a){this.showDescription();var b=a.url;if(b)d.getURL(b,a.urlTarget);else if(b=a.linkToObject){if("string"==
typeof b){var c=this.getObjectById(b);if(c){this.selectObject(c);return}}b&&a.passZoomValuesToTarget&&(b.zoomLatitude=this.zoomLatitude(),b.zoomLongitude=this.zoomLongitude(),b.zoomLevel=this.zoomLevel());this.extendMapData(b)||this.selectObject(b)}}},extendMapData:function(a){var b=a.objectType;if("MapImage"!=b&&"MapArea"!=b&&"MapLine"!=b)return d.extend(a,new d.MapData,!0),this.dataProvider=a,this.zoomInstantly=!0,this.validateData(),!0},showDescription:function(a){a||(a=this.selectedObject);this.allowMultipleDescriptionWindows||
this.closeAllDescriptions();if(a.description){var b=a.descriptionWindow;b&&b.close();b=new d.DescriptionWindow;a.descriptionWindow=b;var c=a.descriptionWindowWidth,h=a.descriptionWindowHeight,f=a.descriptionWindowLeft,e=a.descriptionWindowTop,g=a.descriptionWindowRight,k=a.descriptionWindowBottom;isNaN(g)||(f=this.realWidth-g);isNaN(k)||(e=this.realHeight-k);var l=a.descriptionWindowX;isNaN(l)||(f=l);l=a.descriptionWindowY;isNaN(l)||(e=l);isNaN(f)&&(f=this.mouseX,f=f>this.realWidth/2?f-c-20:f+20);
isNaN(e)&&(e=this.mouseY);b.maxHeight=h;l=a.title;a.titleTr&&(l=a.titleTr);b.show(this,this.descriptionsDiv,a.description,l);a=b.div.style;a.position="absolute";a.width=c+"px";a.maxHeight=h+"px";isNaN(k)||(e-=b.div.offsetHeight);isNaN(g)||(f-=b.div.offsetWidth);a.left=f+"px";a.top=e+"px"}},parseXMLObject:function(a){var b={root:{}};this.parseXMLNode(b,"root",a);this.svgData=b.root.svg;this.getBounds()},getBounds:function(){var a=this.dataProvider;try{var b=this.svgData.defs["amcharts:ammap"];a.leftLongitude=
Number(b.leftLongitude);a.rightLongitude=Number(b.rightLongitude);a.topLatitude=Number(b.topLatitude);a.bottomLatitude=Number(b.bottomLatitude);a.projection=b.projection;var c=b.wrappedLongitudes;c&&(a.rightLongitude+=360);a.wrappedLongitudes=c}catch(d){}},recalcLongitude:function(a){var b=this.dataProvider.leftLongitude,c=this.dataProvider.wrappedLongitudes;return isNaN(a)&&c?a<b?Number(a)+360:a:a},latitudeToCoordinate:function(a){var b,c=this.dataProvider;if(this.mapSet){b=c.topLatitude;var d=c.bottomLatitude;
"mercator"==c.projection&&(a=this.mercatorLatitudeToCoordinate(a),b=this.mercatorLatitudeToCoordinate(b),d=this.mercatorLatitudeToCoordinate(d));b=(a-b)/(d-b)*this.mapHeight}return b},longitudeToCoordinate:function(a){a=this.recalcLongitude(a);var b,c=this.dataProvider;this.mapSet&&(b=c.leftLongitude,b=(a-b)/(c.rightLongitude-b)*this.mapWidth);return b},mercatorLatitudeToCoordinate:function(a){89.5<a&&(a=89.5);-89.5>a&&(a=-89.5);a=d.degreesToRadians(a);a=.5*Math.log((1+Math.sin(a))/(1-Math.sin(a)));
return d.radiansToDegrees(a/2)},zoomLatitude:function(){if(this.mapContainer)return this.coordinateToLatitude((-this.mapContainer.y+this.previousHeight/2)/this.zoomLevel())},zoomLongitude:function(){if(this.mapContainer)return this.coordinateToLongitude((-this.mapContainer.x+this.previousWidth/2)/this.zoomLevel())},getAreaCenterLatitude:function(a){a=a.displayObject.getBBox();var b=this.mapScale;a=-this.mapSet.getBBox().y*b+(a.y+a.height/2)*b;return this.coordinateToLatitude(a)},getAreaCenterLongitude:function(a){a=
a.displayObject.getBBox();var b=this.mapScale;a=-this.mapSet.getBBox().x*b+(a.x+a.width/2)*b;return this.coordinateToLongitude(a)},coordinateToLatitude:function(a){var b;if(this.mapSet){var c=this.dataProvider,h=c.bottomLatitude,f=c.topLatitude;b=this.mapHeight;"mercator"==c.projection?(c=this.mercatorLatitudeToCoordinate(h),f=this.mercatorLatitudeToCoordinate(f),a=2*Math.atan(Math.exp(2*(a*(c-f)/b+f)*Math.PI/180))-.5*Math.PI,b=d.radiansToDegrees(a)):b=a/b*(h-f)+f}return Math.round(1E6*b)/1E6},coordinateToLongitude:function(a){var b,
c=this.dataProvider;this.mapSet&&(b=a/this.mapWidth*(c.rightLongitude-c.leftLongitude)+c.leftLongitude);return Math.round(1E6*b)/1E6},milesToPixels:function(a){var b=this.dataProvider;return this.mapWidth/(b.rightLongitude-b.leftLongitude)*a/69.172},kilometersToPixels:function(a){var b=this.dataProvider;return this.mapWidth/(b.rightLongitude-b.leftLongitude)*a/111.325},handleBackgroundClick:function(){if(this.backgroundZoomsToTop&&!this.mapWasDragged){var a=this.dataProvider;if(this.checkIfClickable(a))this.clickMapObject(a);
else{var b=a.zoomX,c=a.zoomY,d=a.zoomLongitude,f=a.zoomLatitude,a=a.zoomLevel;isNaN(b)||isNaN(c)||this.zoomTo(a,b,c);isNaN(d)||isNaN(f)||this.zoomToLongLat(a,d,f,!0)}}},parseXMLNode:function(a,b,c,d){void 0===d&&(d="");var f,e,g;if(c){var k=c.childNodes.length;for(f=0;f<k;f++){e=c.childNodes[f];var l=e.nodeName,m=e.nodeValue?this.trim(e.nodeValue):"",n=!1;e.attributes&&0<e.attributes.length&&(n=!0);if(0!==e.childNodes.length||""!==m||!1!==n)if(3==e.nodeType||4==e.nodeType){if(""!==m){e=0;for(g in a[b])a[b].hasOwnProperty(g)&&
e++;e?a[b]["#text"]=m:a[b]=m}}else if(1==e.nodeType){var p;void 0!==a[b][l]?void 0===a[b][l].length?(p=a[b][l],a[b][l]=[],a[b][l].push(p),a[b][l].push({}),p=a[b][l][1]):"object"==typeof a[b][l]&&(a[b][l].push({}),p=a[b][l][a[b][l].length-1]):(a[b][l]={},p=a[b][l]);if(e.attributes&&e.attributes.length)for(m=0;m<e.attributes.length;m++)p[e.attributes[m].name]=e.attributes[m].value;void 0!==a[b][l].length?this.parseXMLNode(a[b][l],a[b][l].length-1,e,d+" "):this.parseXMLNode(a[b],l,e,d+" ")}}e=0;c=
"";for(g in a[b])"#text"==g?c=a[b][g]:e++;0===e&&void 0===a[b].length&&(a[b]=c)}},doDoubleClickZoom:function(){if(!this.mapWasDragged){var a=this.zoomLevel()*this.zoomControl.zoomFactor;this.zoomToStageXY(a,this.mouseX,this.mouseY)}},getDevInfo:function(){var a=this.zoomLevel(),a={chart:this,type:"writeDevInfo",zoomLevel:a,zoomX:this.zoomX(),zoomY:this.zoomY(),zoomLatitude:this.zoomLatitude(),zoomLongitude:this.zoomLongitude(),latitude:this.coordinateToLatitude((this.mouseY-this.mapContainer.y)/a),
longitude:this.coordinateToLongitude((this.mouseX-this.mapContainer.x)/a),left:this.mouseX,top:this.mouseY,right:this.realWidth-this.mouseX,bottom:this.realHeight-this.mouseY,percentLeft:Math.round(this.mouseX/this.realWidth*100)+"%",percentTop:Math.round(this.mouseY/this.realHeight*100)+"%",percentRight:Math.round((this.realWidth-this.mouseX)/this.realWidth*100)+"%",percentBottom:Math.round((this.realHeight-this.mouseY)/this.realHeight*100)+"%"},b="zoomLevel:"+a.zoomLevel+", zoomLongitude:"+a.zoomLongitude+
", zoomLatitude:"+a.zoomLatitude+"\n",b=b+("zoomX:"+a.zoomX+", zoomY:"+a.zoomY+"\n"),b=b+("latitude:"+a.latitude+", longitude:"+a.longitude+"\n"),b=b+("left:"+a.left+", top:"+a.top+"\n"),b=b+("right:"+a.right+", bottom:"+a.bottom+"\n"),b=b+("left:"+a.percentLeft+", top:"+a.percentTop+"\n"),b=b+("right:"+a.percentRight+", bottom:"+a.percentBottom+"\n");a.str=b;this.fire(a.type,a);return a},getXY:function(a,b,c){void 0!==a&&(-1!=String(a).indexOf("%")?(a=Number(a.split("%").join("")),c&&(a=100-a),a=
Number(a)*b/100):c&&(a=b-a));return a},getObjectById:function(a){var b=this.dataProvider;if(b.areas){var c=this.getObject(a,b.areas);if(c)return c}if(c=this.getObject(a,b.images))return c;if(a=this.getObject(a,b.lines))return a},getObject:function(a,b){if(b){var c;for(c=0;c<b.length;c++){var d=b[c];if(d.id==a)return d;if(d.areas){var f=this.getObject(a,d.areas);if(f)return f}if(f=this.getObject(a,d.images))return f;if(d=this.getObject(a,d.lines))return d}}},parseData:function(){var a=this.dataProvider;
this.processObject(a.areas,a,"area");this.processObject(a.images,a,"image");this.processObject(a.lines,a,"line")},processObject:function(a,b,c){if(a){var h;for(h=0;h<a.length;h++){var f=a[h];f.parentObject=b;"area"==c&&d.extend(f,new d.MapArea(this.theme),!0);"image"==c&&(f=d.extend(f,new d.MapImage(this.theme),!0));"line"==c&&(f=d.extend(f,new d.MapLine(this.theme),!0));a[h]=f;f.areas&&this.processObject(f.areas,f,"area");f.images&&this.processObject(f.images,f,"image");f.lines&&this.processObject(f.lines,
f,"line")}}},positionChanged:function(){var a={type:"positionChanged",zoomX:this.zoomX(),zoomY:this.zoomY(),zoomLevel:this.zoomLevel(),chart:this};this.fire(a.type,a)},getX:function(a,b){return this.getXY(a,this.realWidth,b)},getY:function(a,b){return this.getXY(a,this.realHeight,b)},trim:function(a){if(a){var b;for(b=0;b<a.length;b++)if(-1===" \n\r\t\f\x0B\u00a0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000".indexOf(a.charAt(b))){a=a.substring(b);break}for(b=
a.length-1;0<=b;b--)if(-1===" \n\r\t\f\x0B\u00a0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000".indexOf(a.charAt(b))){a=a.substring(0,b+1);break}return-1===" \n\r\t\f\x0B\u00a0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000".indexOf(a.charAt(0))?a:""}},destroy:function(){d.AmMap.base.destroy.call(this)}})})();(function(){var d=window.AmCharts;d.ZoomControl=d.Class({construct:function(a){this.cname="ZoomControl";this.panStepSize=.1;this.zoomFactor=2;this.maxZoomLevel=64;this.minZoomLevel=1;this.zoomControlEnabled=this.panControlEnabled=!0;this.buttonRollOverColor="#CC0000";this.buttonFillColor="#990000";this.buttonFillAlpha=1;this.buttonBorderColor="#FFFFFF";this.buttonIconAlpha=this.buttonBorderThickness=this.buttonBorderAlpha=1;this.gridColor="#FFFFFF";this.homeIconFile="homeIcon.gif";this.gridBackgroundColor=
"#000000";this.gridBackgroundAlpha=.15;this.gridAlpha=1;this.buttonSize=18;this.iconSize=11;this.buttonCornerRadius=0;this.gridHeight=150;this.top=this.left=10;d.applyTheme(this,a,this.cname)},init:function(a,b){var c=this;c.chart=a;d.remove(c.set);var h=b.set();d.setCN(a,h,"zoom-control");var f=c.buttonSize,e=c.zoomControlEnabled,g=c.panControlEnabled,k=c.buttonFillColor,l=c.buttonFillAlpha,m=c.buttonBorderThickness,n=c.buttonBorderColor,p=c.buttonBorderAlpha,u=c.buttonCornerRadius,t=c.buttonRollOverColor,
v=c.gridHeight,D=c.zoomFactor,A=c.minZoomLevel,C=c.maxZoomLevel,B=c.buttonIconAlpha,w=a.getX(c.left),q=a.getY(c.top);isNaN(c.right)||(w=a.getX(c.right,!0),w=g?w-3*f:w-f);isNaN(c.bottom)||(q=a.getY(c.bottom,!0),e&&(q-=v+3*f),q=g?q-3*f:q+f);h.translate(w,q);c.previousDY=NaN;var x;if(e){x=b.set();d.setCN(a,x,"zoom-control-zoom");h.push(x);c.set=h;c.zoomSet=x;q=d.rect(b,f+6,v+2*f+6,c.gridBackgroundColor,c.gridBackgroundAlpha,0,0,0,4);d.setCN(a,q,"zoom-bg");q.translate(-3,-3);q.mouseup(function(){c.handleBgUp()}).touchend(function(){c.handleBgUp()});
x.push(q);q=new d.SimpleButton;q.setIcon(a.pathToImages+"plus.gif",c.iconSize);q.setClickHandler(a.zoomIn,a);q.init(b,f,f,k,l,m,n,p,u,t,B);d.setCN(a,q.set,"zoom-in");x.push(q.set);q=new d.SimpleButton;q.setIcon(a.pathToImages+"minus.gif",c.iconSize);q.setClickHandler(a.zoomOut,a);q.init(b,f,f,k,l,m,n,p,u,t,B);q.set.translate(0,v+f);d.setCN(a,q.set,"zoom-out");x.push(q.set);var w=Math.log(C/A)/Math.log(D)+1,e=v/w,y;for(y=1;y<w;y++)q=f+y*e,q=d.line(b,[1,f-2],[q,q],c.gridColor,c.gridAlpha,1),d.setCN(a,
q,"zoom-grid"),x.push(q);q=new d.SimpleButton;q.setDownHandler(c.draggerDown,c);q.setClickHandler(c.draggerUp,c);q.init(b,f,e,k,l,m,n,p,u,t);d.setCN(a,q.set,"zoom-dragger");x.push(q.set);c.dragger=q.set;c.previousY=NaN;v-=e;A=Math.log(A/100)/Math.log(D);D=Math.log(C/100)/Math.log(D);c.realStepSize=v/(D-A);c.realGridHeight=v;c.stepMax=D}g&&(g=b.set(),d.setCN(a,g,"zoom-control-pan"),h.push(g),x&&x.translate(f,4*f),x=new d.SimpleButton,x.setIcon(a.pathToImages+"panLeft.gif",c.iconSize),x.setClickHandler(a.moveLeft,
a),x.init(b,f,f,k,l,m,n,p,u,t,B),x.set.translate(0,f),d.setCN(a,x.set,"pan-left"),g.push(x.set),x=new d.SimpleButton,x.setIcon(a.pathToImages+"panRight.gif",c.iconSize),x.setClickHandler(a.moveRight,a),x.init(b,f,f,k,l,m,n,p,u,t,B),x.set.translate(2*f,f),d.setCN(a,x.set,"pan-right"),g.push(x.set),x=new d.SimpleButton,x.setIcon(a.pathToImages+"panUp.gif",c.iconSize),x.setClickHandler(a.moveUp,a),x.init(b,f,f,k,l,m,n,p,u,t,B),x.set.translate(f,0),d.setCN(a,x.set,"pan-up"),g.push(x.set),x=new d.SimpleButton,
x.setIcon(a.pathToImages+"panDown.gif",c.iconSize),x.setClickHandler(a.moveDown,a),x.init(b,f,f,k,l,m,n,p,u,t,B),x.set.translate(f,2*f),d.setCN(a,x.set,"pan-down"),g.push(x.set),l=new d.SimpleButton,l.setIcon(a.pathToImages+c.homeIconFile,c.iconSize),l.setClickHandler(a.goHome,a),l.init(b,f,f,k,0,0,n,0,u,t,B),l.set.translate(f,f),d.setCN(a,l.set,"pan-home"),g.push(l.set),h.push(g));c.update()},draggerDown:function(){this.chart.stopDrag();this.isDragging=!0},draggerUp:function(){this.isDragging=!1},
handleBgUp:function(){var a=this.chart,b=100*Math.pow(this.zoomFactor,this.stepMax-(a.mouseY-this.zoomSet.y-this.set.y-this.buttonSize-this.realStepSize/2)/this.realStepSize);a.zoomTo(b)},update:function(){var a,b=this.zoomFactor,c=this.realStepSize,h=this.stepMax,f=this.dragger,e=this.buttonSize,g=this.chart;g&&(this.isDragging?(g.stopDrag(),a=f.y+(g.mouseY-this.previousY),a=d.fitToBounds(a,e,this.realGridHeight+e),c=100*Math.pow(b,h-(a-e)/c),g.zoomTo(c,NaN,NaN,!0)):(a=Math.log(g.zoomLevel()/100)/
Math.log(b),a=(h-a)*c+e),this.previousY=g.mouseY,this.previousDY!=a&&f&&(f.translate(0,a),this.previousDY=a))}})})();(function(){var d=window.AmCharts;d.SimpleButton=d.Class({construct:function(){},init:function(a,b,c,h,f,e,g,k,l,m,n){var p=this;p.rollOverColor=m;p.color=h;m=a.set();p.set=m;h=d.rect(a,b,c,h,f,e,g,k,l);m.push(h);if(f=p.iconPath)e=p.iconSize,a=a.image(f,(b-e)/2,(c-e)/2,e,e),m.push(a),a.setAttr("opacity",n),a.mousedown(function(){p.handleDown()}).mouseup(function(){p.handleUp()}).mouseover(function(){p.handleOver()}).mouseout(function(){p.handleOut()});h.mousedown(function(){p.handleDown()}).touchstart(function(){p.handleDown()}).mouseup(function(){p.handleUp()}).touchend(function(){p.handleUp()}).mouseover(function(){p.handleOver()}).mouseout(function(){p.handleOut()});
p.bg=h},setIcon:function(a,b){this.iconPath=a;this.iconSize=b},setClickHandler:function(a,b){this.clickHandler=a;this.scope=b},setDownHandler:function(a,b){this.downHandler=a;this.scope=b},handleUp:function(){var a=this.clickHandler;a&&a.call(this.scope)},handleDown:function(){var a=this.downHandler;a&&a.call(this.scope)},handleOver:function(){this.bg.setAttr("fill",this.rollOverColor)},handleOut:function(){this.bg.setAttr("fill",this.color)}})})();(function(){var d=window.AmCharts;d.SmallMap=d.Class({construct:function(a){this.cname="SmallMap";this.mapColor="#e6e6e6";this.rectangleColor="#FFFFFF";this.top=this.right=10;this.minimizeButtonWidth=16;this.backgroundColor="#9A9A9A";this.backgroundAlpha=1;this.borderColor="#FFFFFF";this.borderThickness=3;this.borderAlpha=1;this.size=.2;this.enabled=!0;d.applyTheme(this,a,this.cname)},init:function(a,b){var c=this;if(c.enabled){c.chart=a;c.container=b;c.width=a.realWidth*c.size;c.height=a.realHeight*
c.size;d.remove(c.set);var h=b.set();c.set=h;d.setCN(a,h,"small-map");var f=b.set();c.allSet=f;h.push(f);c.buildSVGMap();var e=c.borderThickness,g=c.borderColor,k=d.rect(b,c.width+e,c.height+e,c.backgroundColor,c.backgroundAlpha,e,g,c.borderAlpha);d.setCN(a,k,"small-map-bg");k.translate(-e/2,-e/2);f.push(k);k.toBack();var l,m,k=c.minimizeButtonWidth,n=new d.SimpleButton;n.setIcon(a.pathToImages+"arrowDown.gif",k);n.setClickHandler(c.minimize,c);n.init(b,k,k,g,1,1,g,1);d.setCN(a,n.set,"small-map-down");
n=n.set;c.downButtonSet=n;h.push(n);var p=new d.SimpleButton;p.setIcon(a.pathToImages+"arrowUp.gif",k);p.setClickHandler(c.maximize,c);p.init(b,k,k,g,1,1,g,1);d.setCN(a,p.set,"small-map-up");g=p.set;c.upButtonSet=g;g.hide();h.push(g);var u,t;isNaN(c.top)||(l=a.getY(c.top)+e,t=0);isNaN(c.bottom)||(l=a.getY(c.bottom,!0)-c.height-e,t=c.height-k+e/2);isNaN(c.left)||(m=a.getX(c.left)+e,u=-e/2);isNaN(c.right)||(m=a.getX(c.right,!0)-c.width-e,u=c.width-k+e/2);e=b.set();e.clipRect(1,1,c.width,c.height);f.push(e);
c.rectangleC=e;h.translate(m,l);n.translate(u,t);g.translate(u,t);f.mouseup(function(){c.handleMouseUp()});c.drawRectangle()}else d.remove(c.allSet),d.remove(c.downButtonSet),d.remove(c.upButtonSet)},minimize:function(){this.downButtonSet.hide();this.upButtonSet.show();this.allSet.hide()},maximize:function(){this.downButtonSet.show();this.upButtonSet.hide();this.allSet.show()},buildSVGMap:function(){var a=this.chart,b={fill:this.mapColor,stroke:this.mapColor,"stroke-opacity":1},c=a.svgData.g.path,
h=this.container,f=h.set();d.setCN(a,f,"small-map-image");var e;for(e=0;e<c.length;e++){var g=h.path(c[e].d).attr(b);f.push(g)}this.allSet.push(f);b=f.getBBox();c=this.size*a.mapScale;h=-b.x*c;e=-b.y*c;var k=g=0;a.centerMap&&(g=(this.width-b.width*c)/2,k=(this.height-b.height*c)/2);this.mapWidth=b.width*c;this.mapHeight=b.height*c;this.dx=g;this.dy=k;f.translate(h+g,e+k,c)},update:function(){var a=this.chart,b=a.zoomLevel(),c=this.width,d=a.mapContainer,a=c/(a.realWidth*b),c=c/b,b=this.height/b,f=
this.rectangle;f.translate(-d.x*a+this.dx,-d.y*a+this.dy);0<c&&0<b&&(f.setAttr("width",Math.ceil(c+1)),f.setAttr("height",Math.ceil(b+1)));this.rWidth=c;this.rHeight=b},drawRectangle:function(){var a=this.rectangle;d.remove(a);a=d.rect(this.container,10,10,"#000",0,1,this.rectangleColor,1);d.setCN(this.chart,a,"small-map-rectangle");this.rectangleC.push(a);this.rectangle=a},handleMouseUp:function(){var a=this.chart,b=a.zoomLevel();a.zoomTo(b,-((a.mouseX-this.set.x-this.dx-this.rWidth/2)/this.mapWidth)*
b,-((a.mouseY-this.set.y-this.dy-this.rHeight/2)/this.mapHeight)*b)}})})();(function(){var d=window.AmCharts;d.AreasProcessor=d.Class({construct:function(a){this.chart=a},process:function(a){this.updateAllAreas();this.allObjects=[];a=a.areas;var b=this.chart,c,h=a.length,f,e,g=0,k=b.svgAreasById,l=!1,m=!1,n=0;for(f=0;f<h;f++)if(e=a[f],e=e.value,!isNaN(e)){if(!1===l||l<e)l=e;if(!1===m||m>e)m=e;g+=Math.abs(e);n++}isNaN(b.minValue)||(m=b.minValue);isNaN(b.maxValue)||(l=b.maxValue);b.maxValueReal=l;b.minValueReal=m;for(f=0;f<h;f++)e=a[f],isNaN(e.value)?e.percents=void 0:(e.percents=
(e.value-m)/g*100,m==l&&(e.percents=100));for(f=0;f<h;f++){e=a[f];var p=k[e.id];c=b.areasSettings;p&&p.className&&(g=b.areasClasses[p.className])&&(c=g,c=d.processObject(c,d.AreasSettings,b.theme));var u=c.color,t=c.alpha,v=c.outlineThickness,D=c.rollOverColor,A=c.selectedColor,C=c.rollOverAlpha,B=c.outlineColor,w=c.outlineAlpha,q=c.balloonText,x=c.selectable,y=c.pattern,r=c.rollOverOutlineColor,E=c.bringForwardOnHover,F=c.preserveOriginalAttributes;this.allObjects.push(e);e.chart=b;e.baseSettings=
c;e.autoZoomReal=void 0==e.autoZoom?c.autoZoom:e.autoZoom;g=e.color;void 0==g&&(g=u);n=e.alpha;isNaN(n)&&(n=t);t=e.rollOverAlpha;isNaN(t)&&(t=C);isNaN(t)&&(t=n);C=e.rollOverColor;void 0==C&&(C=D);D=e.pattern;void 0==D&&(D=y);y=e.selectedColor;void 0==y&&(y=A);(A=e.balloonText)||(A=q);void 0==c.colorSolid||isNaN(e.value)||(q=Math.floor((e.value-m)/((l-m)/b.colorSteps)),q==b.colorSteps&&q--,q*=1/(b.colorSteps-1),l==m&&(q=1),e.colorReal=d.getColorFade(g,c.colorSolid,q));void 0!=e.color&&(e.colorReal=
e.color);void 0==e.selectable&&(e.selectable=x);void 0==e.colorReal&&(e.colorReal=u);u=e.outlineColor;void 0==u&&(u=B);B=e.outlineAlpha;isNaN(B)&&(B=w);w=e.outlineThickness;isNaN(w)&&(w=v);v=e.rollOverOutlineColor;void 0==v&&(v=r);void 0==e.bringForwardOnHover&&(e.bringForwardOnHover=E);void 0==e.preserveOriginalAttributes&&(e.preserveOriginalAttributes=F);e.alphaReal=n;e.rollOverColorReal=C;e.rollOverAlphaReal=t;e.balloonTextReal=A;e.selectedColorReal=y;e.outlineColorReal=u;e.outlineAlphaReal=B;
e.rollOverOutlineColorReal=v;e.outlineThicknessReal=w;e.patternReal=D;d.processDescriptionWindow(c,e);if(p&&(c=p.area,r=p.title,e.enTitle=p.title,r&&!e.title&&(e.title=r),(p=b.language)?(r=d.mapTranslations)&&(p=r[p])&&p[e.enTitle]&&(e.titleTr=p[e.enTitle]):e.titleTr=void 0,c)){e.displayObject=c;e.mouseEnabled&&b.addObjectEventListeners(c,e);var z;void 0!=g&&(z=g);void 0!=e.colorReal&&(z=e.showAsSelected||b.selectedObject==e?e.selectedColorReal:e.colorReal);c.node.setAttribute("class","");d.setCN(b,
c,"map-area");d.setCN(b,c,"map-area-"+c.id);e.preserveOriginalAttributes||(c.setAttr("fill",z),c.setAttr("stroke",u),c.setAttr("stroke-opacity",B),c.setAttr("stroke-width",w),c.setAttr("fill-opacity",n));D&&c.pattern(D,b.mapScale,b.path);e.hidden&&c.hide()}}},updateAllAreas:function(){var a=this.chart,b=a.areasSettings,c=b.unlistedAreasColor,h=b.unlistedAreasAlpha,f=b.unlistedAreasOutlineColor,e=b.unlistedAreasOutlineAlpha,g=a.svgAreas,k=a.dataProvider,l=k.areas,m={},n;for(n=0;n<l.length;n++)m[l[n].id]=
l[n];for(n=0;n<g.length;n++){l=g[n];if(b.preserveOriginalAttributes){if(l.customAttr)for(var p in l.customAttr)l.setAttr(p,l.customAttr[p])}else void 0!=c&&l.setAttr("fill",c),isNaN(h)||l.setAttr("fill-opacity",h),void 0!=f&&l.setAttr("stroke",f),isNaN(e)||l.setAttr("stroke-opacity",e),l.setAttr("stroke-width",b.outlineThickness);d.setCN(a,l,"map-area-unlisted");if(k.getAreasFromMap&&!m[l.id]){var u=new d.MapArea(a.theme);u.parentObject=k;u.id=l.id;k.areas.push(u)}}}})})();(function(){var d=window.AmCharts;d.AreasSettings=d.Class({construct:function(a){this.cname="AreasSettings";this.alpha=1;this.autoZoom=!1;this.balloonText="[[title]]";this.color="#FFCC00";this.colorSolid="#990000";this.unlistedAreasAlpha=1;this.unlistedAreasColor="#DDDDDD";this.outlineColor="#FFFFFF";this.outlineAlpha=1;this.outlineThickness=.5;this.selectedColor=this.rollOverOutlineColor="#CC0000";this.unlistedAreasOutlineColor="#FFFFFF";this.unlistedAreasOutlineAlpha=1;this.descriptionWindowWidth=
250;this.adjustOutlineThickness=!1;this.bringForwardOnHover=!0;d.applyTheme(this,a,this.cname)}})})();(function(){var d=window.AmCharts;d.ImagesProcessor=d.Class({construct:function(a){this.chart=a;this.reset()},process:function(a){var b=a.images,c;for(c=0;c<b.length;c++)this.createImage(b[c],c);a.parentObject&&a.remainVisible&&this.process(a.parentObject)},createImage:function(a,b){var c=this.chart,h=c.container,f=c.mapImagesContainer,e=c.stageImagesContainer,g=c.imagesSettings;a.remove&&a.remove();var k=g.color,l=g.alpha,m=g.rollOverColor,n=g.rollOverOutlineColor,p=g.selectedColor,u=g.balloonText,
t=g.outlineColor,v=g.outlineAlpha,D=g.outlineThickness,A=g.selectedScale,C=g.rollOverScale,B=g.labelPosition,w=g.labelColor,q=g.labelFontSize,x=g.bringForwardOnHover,y=g.labelRollOverColor,r=g.selectedLabelColor;a.index=b;a.chart=c;a.baseSettings=c.imagesSettings;var E=h.set();a.displayObject=E;var F=a.color;void 0==F&&(F=k);k=a.alpha;isNaN(k)&&(k=l);void 0==a.bringForwardOnHover&&(a.bringForwardOnHover=x);l=a.outlineAlpha;isNaN(l)&&(l=v);v=a.rollOverColor;void 0==v&&(v=m);m=a.selectedColor;void 0==
m&&(m=p);(p=a.balloonText)||(p=u);u=a.outlineColor;void 0==u&&(u=t);a.outlineColorReal=u;t=a.outlineThickness;isNaN(t)&&(t=D);(D=a.labelPosition)||(D=B);B=a.labelColor;void 0==B&&(B=w);w=a.labelRollOverColor;void 0==w&&(w=y);y=a.selectedLabelColor;void 0==y&&(y=r);r=a.labelFontSize;isNaN(r)&&(r=q);q=a.selectedScale;isNaN(q)&&(q=A);A=a.rollOverScale;isNaN(A)&&(A=C);a.colorReal=F;a.alphaReal=k;a.rollOverColorReal=v;a.balloonTextReal=p;a.selectedColorReal=m;a.labelColorReal=B;a.labelRollOverColorReal=
w;a.selectedLabelColorReal=y;a.labelFontSizeReal=r;a.labelPositionReal=D;a.selectedScaleReal=q;a.rollOverScaleReal=A;a.rollOverOutlineColorReal=n;d.processDescriptionWindow(g,a);a.centeredReal=void 0==a.centered?g.centered:a.centered;A=a.type;q=a.imageURL;r=a.svgPath;y=a.width;v=a.height;n=a.scale;isNaN(a.percentWidth)||(y=a.percentWidth/100*c.realWidth);isNaN(a.percentHeight)||(v=a.percentHeight/100*c.realHeight);var z;q||A||r||(A="circle",y=1,l=k=0);w=C=0;g=a.selectedColorReal;if(A){isNaN(y)&&(y=
10);isNaN(v)&&(v=10);"kilometers"==a.widthAndHeightUnits&&(y=c.kilometersToPixels(a.width),v=c.kilometersToPixels(a.height));"miles"==a.widthAndHeightUnits&&(y=c.milesToPixels(a.width),v=c.milesToPixels(a.height));if("circle"==A||"bubble"==A)v=y;z=this.createPredefinedImage(F,u,t,A,y,v);w=C=0;a.centeredReal?(isNaN(a.right)||(C=y*n),isNaN(a.bottom)||(w=v*n)):(C=y*n/2,w=v*n/2);z.translate(C,w,n)}else q?(isNaN(y)&&(y=10),isNaN(v)&&(v=10),z=h.image(q,0,0,y,v),z.node.setAttribute("preserveAspectRatio",
"none"),z.setAttr("opacity",k),a.centeredReal&&(C=isNaN(a.right)?-y/2:y/2,w=isNaN(a.bottom)?-v/2:v/2,z.translate(C,w))):r&&(z=h.path(r),u=z.getBBox(),a.centeredReal?(C=-u.x*n-u.width*n/2,isNaN(a.right)||(C=-C),w=-u.y*n-u.height*n/2,isNaN(a.bottom)||(w=-w)):C=w=0,z.translate(C,w,n),z.x=C,z.y=w);z&&(E.push(z),a.image=z,z.setAttr("stroke-opacity",l),z.setAttr("fill-opacity",k),z.setAttr("fill",F),d.setCN(c,z,"map-image"),void 0!=a.id&&d.setCN(c,z,"map-image-"+a.id));F=a.labelColorReal;!a.showAsSelected&&
c.selectedObject!=a||void 0==g||(z.setAttr("fill",g),F=a.selectedLabelColorReal);z=null;void 0!==a.label&&(z=d.text(h,a.label,F,c.fontFamily,a.labelFontSizeReal,a.labelAlign),d.setCN(c,z,"map-image-label"),void 0!==a.id&&d.setCN(c,z,"map-image-label-"+a.id),F=a.labelBackgroundAlpha,(k=a.labelBackgroundColor)&&0<F&&(l=z.getBBox(),h=d.rect(h,l.width+16,l.height+10,k,F),d.setCN(c,h,"map-image-label-background"),void 0!=a.id&&d.setCN(c,h,"map-image-label-background-"+a.id),E.push(h),a.labelBG=h),a.imageLabel=
z,E.push(z),d.setCN(c,E,"map-image-container"),void 0!=a.id&&d.setCN(c,E,"map-image-container-"+a.id));isNaN(a.latitude)||isNaN(a.longitude)?e.push(E):f.push(E);E&&(E.rotation=a.rotation,isNaN(a.rotation)||E.rotate(a.rotation));this.updateSizeAndPosition(a);a.mouseEnabled&&c.addObjectEventListeners(E,a);a.hidden&&E.hide()},updateSizeAndPosition:function(a){var b=this.chart,c=a.displayObject,d=b.getX(a.left),f=b.getY(a.top),e=a.image.getBBox();isNaN(a.right)||(d=b.getX(a.right,!0)-e.width*a.scale);
isNaN(a.bottom)||(f=b.getY(a.bottom,!0)-e.height*a.scale);var g=a.longitude,k=a.latitude,e=this.objectsToResize;this.allSvgObjects.push(c);this.allObjects.push(a);var l=a.imageLabel;if(!isNaN(d)&&!isNaN(f))c.translate(d,f);else if(!isNaN(k)&&!isNaN(g)&&(d=b.longitudeToCoordinate(g),f=b.latitudeToCoordinate(k),c.translate(d,f,NaN,!0),a.fixedSize)){d=1;if(a.showAsSelected||b.selectedObject==a)d=a.selectedScaleReal;e.push({image:c,scale:d})}this.positionLabel(l,a,a.labelPositionReal)},positionLabel:function(a,
b,c){if(a){var d=b.image,f=0,e=0,g=0,k=0;d&&(k=d.getBBox(),e=d.y,f=d.x,g=k.width,k=k.height,b.svgPath&&(g*=b.scale,k*=b.scale));var d=a.getBBox(),l=d.width,m=d.height;"right"==c&&(f+=g+l/2+5,e+=k/2-2);"left"==c&&(f+=-l/2-5,e+=k/2-2);"top"==c&&(e-=m/2+3,f+=g/2);"bottom"==c&&(e+=k+m/2,f+=g/2);"middle"==c&&(f+=g/2,e+=k/2);a.translate(f+b.labelShiftX,e+b.labelShiftY);b.labelBG&&b.labelBG.translate(f-d.width/2+b.labelShiftX-9,e+b.labelShiftY-d.height/2-3)}},createPredefinedImage:function(a,b,c,h,f,e){var g=
this.chart.container,k;switch(h){case "circle":k=d.circle(g,f/2,a,1,c,b,1);break;case "rectangle":k=d.polygon(g,[-f/2,f/2,f/2,-f/2],[e/2,e/2,-e/2,-e/2],a,1,c,b,1);break;case "bubble":k=d.circle(g,f/2,a,1,c,b,1,!0);break;case "hexagon":f/=Math.sqrt(3),k=d.polygon(g,[.87*f,0*f,-.87*f,-.87*f,0*f,.87*f],[.5*f,1*f,.5*f,-.5*f,-1*f,-.5*f],a,1,c,b,1)}return k},reset:function(){this.objectsToResize=[];this.allSvgObjects=[];this.allObjects=[];this.allLabels=[]}})})();(function(){var d=window.AmCharts;d.ImagesSettings=d.Class({construct:function(a){this.cname="ImagesSettings";this.balloonText="[[title]]";this.alpha=1;this.borderAlpha=0;this.borderThickness=1;this.labelPosition="right";this.labelColor="#000000";this.labelFontSize=11;this.color="#000000";this.labelRollOverColor="#00CC00";this.centered=!0;this.rollOverScale=this.selectedScale=1;this.descriptionWindowWidth=250;this.bringForwardOnHover=!0;this.outlineColor="transparent";d.applyTheme(this,a,this.cname)}})})();(function(){var d=window.AmCharts;d.LinesProcessor=d.Class({construct:function(a){this.chart=a;this.reset()},process:function(a){var b=a.lines,c=this.chart,h=c.linesSettings,f=this.objectsToResize,e=c.mapLinesContainer,g=c.stageLinesContainer,k=h.thickness,l=h.dashLength,m=h.arrow,n=h.arrowSize,p=h.arrowColor,u=h.arrowAlpha,t=h.color,v=h.alpha,D=h.rollOverColor,A=h.selectedColor,C=h.rollOverAlpha,B=h.balloonText,w=h.bringForwardOnHover,q=h.arc,x=c.container,y;for(y=0;y<b.length;y++){var r=b[y];r.chart=
c;r.baseSettings=h;var E=x.set();r.displayObject=E;this.allSvgObjects.push(E);this.allObjects.push(r);r.mouseEnabled&&c.addObjectEventListeners(E,r);if(r.remainVisible||c.selectedObject==r.parentObject){var F=r.thickness;isNaN(F)&&(F=k);var z=r.dashLength;isNaN(z)&&(z=l);var H=r.color;void 0==H&&(H=t);var G=r.alpha;isNaN(G)&&(G=v);var P=r.rollOverAlpha;isNaN(P)&&(P=C);isNaN(P)&&(P=G);var J=r.rollOverColor;void 0==J&&(J=D);var Y=r.selectedColor;void 0==Y&&(Y=A);var K=r.balloonText;K||(K=B);var R=r.arc;
isNaN(R)&&(R=q);var N=r.arrow;if(!N||"none"==N&&"none"!=m)N=m;var V=r.arrowColor;void 0==V&&(V=p);void 0==V&&(V=H);var W=r.arrowAlpha;isNaN(W)&&(W=u);isNaN(W)&&(W=G);var S=r.arrowSize;isNaN(S)&&(S=n);r.alphaReal=G;r.colorReal=H;r.rollOverColorReal=J;r.rollOverAlphaReal=P;r.balloonTextReal=K;r.selectedColorReal=Y;r.thicknessReal=F;void 0==r.bringForwardOnHover&&(r.bringForwardOnHover=w);d.processDescriptionWindow(h,r);var J=this.processCoordinates(r.x,c.realWidth),K=this.processCoordinates(r.y,c.realHeight),
L=r.longitudes,P=r.latitudes,O=L.length,M;if(0<O)for(J=[],M=0;M<O;M++)J.push(c.longitudeToCoordinate(L[M]));O=P.length;if(0<O)for(K=[],M=0;M<O;M++)K.push(c.latitudeToCoordinate(P[M]));if(0<J.length){d.dx=0;d.dy=0;var Q,aa,X;M=10*(1-Math.abs(R));10<=M&&(M=NaN);1>M&&(M=1);if(isNaN(M))L=d.line(x,J,K,H,1,F,z,!1,!1,!0),H=d.line(x,J,K,H,.001,3,z,!1,!1,!0);else{O=1;0>R&&(O=0);L={stroke:H,"stroke-opacity":1,"stroke-width":F,"fill-opacity":0};void 0!==z&&0<z&&(L["stroke-dasharray"]=z);var z=J[0],Z=J[1],ba=
K[0],ca=K[1];aa=Math.sqrt(Math.pow(Z-z,2)+Math.pow(ca-ba,2));X=aa/2*M;Q=270+180*Math.acos(aa/2/X)/Math.PI;isNaN(Q)&&(Q=270);z<Z&&(M=z,z=Z,Z=M,M=ba,ba=ca,ca=M,Q=-Q);0<R&&(Q=-Q);z="M"+z+","+ba+"A"+X+","+X+",0,0,"+O+","+Z+","+ca;L=x.path(z).attr(L);H=x.path(z).attr({stroke:H,"stroke-width":3,"stroke-opacity":.001,fill:"none"})}d.setCN(c,L,"map-line");void 0!=r.id&&d.setCN(c,L,"map-line-"+r.id);d.dx=.5;d.dy=.5;E.push(L);E.push(H);L.setAttr("opacity",G);if("none"!=N){var I,T,U;if("end"==N||"both"==N)G=
J[J.length-1],O=K[K.length-1],1<J.length?(z=J[J.length-2],I=K[K.length-2]):(z=G,I=O),I=180*Math.atan((O-I)/(G-z))/Math.PI,isNaN(Q)||(I+=Q),T=G,U=O,I=0>G-z?I-90:I+90;"both"==N&&(G=d.polygon(x,[-S/2,0,S/2],[1.5*S,0,1.5*S],V,W,1,V,W),E.push(G),G.translate(T,U,1,!0),G.rotate(I),d.setCN(c,L,"map-line-arrow"),void 0!=r.id&&d.setCN(c,L,"map-line-arrow-"+r.id),r.fixedSize&&f.push(G));if("start"==N||"both"==N)G=J[0],U=K[0],1<J.length?(z=J[1],T=K[1]):(z=G,T=U),I=180*Math.atan((U-T)/(G-z))/Math.PI,isNaN(Q)||
(I-=Q),T=G,I=0>G-z?I-90:I+90;"middle"==N&&(G=J[J.length-1],O=K[K.length-1],1<J.length?(z=J[J.length-2],I=K[K.length-2]):(z=G,I=O),T=z+(G-z)/2,U=I+(O-I)/2,I=180*Math.atan((O-I)/(G-z))/Math.PI,isNaN(Q)||(N=aa/2,N=X-Math.sqrt(X*X-N*N),0>R&&(N=-N),R=Math.sin(I/180*Math.PI),-1==R&&(R=1),T-=R*N,U+=Math.cos(I/180*Math.PI)*N),I=0>G-z?I-90:I+90);G=d.polygon(x,[-S/2,0,S/2],[1.5*S,0,1.5*S],V,W,1,V,W);d.setCN(c,L,"map-line-arrow");void 0!=r.id&&d.setCN(c,L,"map-line-arrow-"+r.id);E.push(G);G.translate(T,U,1,
!0);G.rotate(I);r.fixedSize&&f.push(G);r.arrowSvg=G}r.fixedSize&&L&&(this.linesToResize.push({line:L,thickness:F}),this.linesToResize.push({line:H,thickness:3}));r.lineSvg=L;r.showAsSelected&&!isNaN(Y)&&L.setAttr("stroke",Y);0<P.length?e.push(E):g.push(E);r.hidden&&E.hide()}}}a.parentObject&&a.remainVisible&&this.process(a.parentObject)},processCoordinates:function(a,b){var c=[],d;for(d=0;d<a.length;d++){var f=a[d],e=Number(f);isNaN(e)&&(e=Number(f.replace("%",""))*b/100);isNaN(e)||c.push(e)}return c},
reset:function(){this.objectsToResize=[];this.allSvgObjects=[];this.allObjects=[];this.linesToResize=[]}})})();(function(){var d=window.AmCharts;d.LinesSettings=d.Class({construct:function(a){this.cname="LinesSettings";this.balloonText="[[title]]";this.thickness=1;this.dashLength=0;this.arrowSize=10;this.arrowAlpha=1;this.arrow="none";this.color="#990000";this.descriptionWindowWidth=250;this.bringForwardOnHover=!0;d.applyTheme(this,a,this.cname)}})})();(function(){var d=window.AmCharts;d.MapObject=d.Class({construct:function(a){this.fixedSize=this.mouseEnabled=!0;this.images=[];this.lines=[];this.areas=[];this.remainVisible=!0;this.passZoomValuesToTarget=!1;this.objectType=this.cname;d.applyTheme(this,a,"MapObject")}})})();(function(d){d=window.AmCharts;d.MapArea=d.Class({inherits:d.MapObject,construct:function(a){this.cname="MapArea";d.MapArea.base.construct.call(this,a);d.applyTheme(this,a,this.cname)}})})();(function(){var d=window.AmCharts;d.MapLine=d.Class({inherits:d.MapObject,construct:function(a){this.cname="MapLine";this.longitudes=[];this.latitudes=[];this.x=[];this.y=[];this.arrow="none";d.MapLine.base.construct.call(this,a);d.applyTheme(this,a,this.cname)}})})();(function(){var d=window.AmCharts;d.MapImage=d.Class({inherits:d.MapObject,construct:function(a){this.cname="MapImage";this.scale=1;this.widthAndHeightUnits="pixels";this.labelShiftY=this.labelShiftX=0;d.MapImage.base.construct.call(this,a);d.applyTheme(this,a,this.cname)},remove:function(){var a=this.displayObject;a&&a.remove();(a=this.imageLabel)&&a.remove()}})})();(function(){var d=window.AmCharts;d.degreesToRadians=function(a){return a/180*Math.PI};d.radiansToDegrees=function(a){return a/Math.PI*180};d.getColorFade=function(a,b,c){var h=d.hex2RGB(b);b=h[0];var f=h[1],h=h[2],e=d.hex2RGB(a);a=e[0];var g=e[1],e=e[2];a+=Math.round((b-a)*c);g+=Math.round((f-g)*c);e+=Math.round((h-e)*c);return"rgb("+a+","+g+","+e+")"};d.hex2RGB=function(a){return[parseInt(a.substring(1,3),16),parseInt(a.substring(3,5),16),parseInt(a.substring(5,7),16)]};d.processDescriptionWindow=
function(a,b){isNaN(b.descriptionWindowX)&&(b.descriptionWindowX=a.descriptionWindowX);isNaN(b.descriptionWindowY)&&(b.descriptionWindowY=a.descriptionWindowY);isNaN(b.descriptionWindowLeft)&&(b.descriptionWindowLeft=a.descriptionWindowLeft);isNaN(b.descriptionWindowRight)&&(b.descriptionWindowRight=a.descriptionWindowRight);isNaN(b.descriptionWindowTop)&&(b.descriptionWindowTop=a.descriptionWindowTop);isNaN(b.descriptionWindowBottom)&&(b.descriptionWindowBottom=a.descriptionWindowBottom);isNaN(b.descriptionWindowWidth)&&
(b.descriptionWindowWidth=a.descriptionWindowWidth);isNaN(b.descriptionWindowHeight)&&(b.descriptionWindowHeight=a.descriptionWindowHeight)}})();(function(){var d=window.AmCharts;d.MapData=d.Class({inherits:d.MapObject,construct:function(){this.cname="MapData";d.MapData.base.construct.call(this);this.projection="mercator";this.topLatitude=90;this.bottomLatitude=-90;this.leftLongitude=-180;this.rightLongitude=180;this.zoomLevel=1;this.getAreasFromMap=!1}})})();(function(){var d=window.AmCharts;d.DescriptionWindow=d.Class({construct:function(){},show:function(a,b,c,d){var f=this,e=document.createElement("div");e.style.position="absolute";var g=a.classNamePrefix+"-description-";e.className="ammapDescriptionWindow "+g+"div";f.div=e;b.appendChild(e);var k=document.createElement("img");k.className="ammapDescriptionWindowCloseButton "+g+"close-img";k.src=a.pathToImages+"xIcon.gif";k.style.cssFloat="right";k.onclick=function(){f.close()};k.onmouseover=function(){k.src=
a.pathToImages+"xIconH.gif"};k.onmouseout=function(){k.src=a.pathToImages+"xIcon.gif"};e.appendChild(k);b=document.createElement("div");b.className="ammapDescriptionTitle "+g+"title-div";b.onmousedown=function(){f.div.style.zIndex=1E3};e.appendChild(b);d=document.createTextNode(d);b.appendChild(d);d=b.offsetHeight;b=document.createElement("div");b.className="ammapDescriptionText "+g+"text-div";b.style.maxHeight=f.maxHeight-d-20+"px";e.appendChild(b);b.innerHTML=c},close:function(){try{this.div.parentNode.removeChild(this.div)}catch(a){}}})})();(function(){var d=window.AmCharts;d.ValueLegend=d.Class({construct:function(a){this.cname="ValueLegend";this.enabled=!0;this.showAsGradient=!1;this.minValue=0;this.height=12;this.width=200;this.bottom=this.left=10;this.borderColor="#FFFFFF";this.borderAlpha=this.borderThickness=1;this.color="#000000";this.fontSize=11;d.applyTheme(this,a,this.cname)},init:function(a,b){if(this.enabled){var c=a.areasSettings.color,h=a.areasSettings.colorSolid,f=a.colorSteps;d.remove(this.set);var e=b.set();this.set=
e;d.setCN(a,e,"value-legend");var g=0,k=this.minValue,l=this.fontSize,m=a.fontFamily,n=this.color;void 0==k&&(k=a.minValueReal);void 0!==k&&(g=d.text(b,k,n,m,l,"left"),g.translate(0,l/2-1),d.setCN(a,g,"value-legend-min-label"),e.push(g),g=g.getBBox().height);k=this.maxValue;void 0===k&&(k=a.maxValueReal);void 0!==k&&(g=d.text(b,k,n,m,l,"right"),g.translate(this.width,l/2-1),d.setCN(a,g,"value-legend-max-label"),e.push(g),g=g.getBBox().height);if(this.showAsGradient)c=d.rect(b,this.width,this.height,
[c,h],1,this.borderThickness,this.borderColor,1,0,0),d.setCN(a,c,"value-legend-gradient"),c.translate(0,g),e.push(c);else for(l=this.width/f,m=0;m<f;m++)n=d.getColorFade(c,h,1*m/(f-1)),n=d.rect(b,l,this.height,n,1,this.borderThickness,this.borderColor,1),d.setCN(a,n,"value-legend-color"),d.setCN(a,n,"value-legend-color-"+m),n.translate(l*m,g),e.push(n);h=c=0;f=e.getBBox();g=a.getY(this.bottom,!0);l=a.getY(this.top);m=a.getX(this.right,!0);n=a.getX(this.left);isNaN(l)||(c=l);isNaN(g)||(c=g-f.height);
isNaN(n)||(h=n);isNaN(m)||(h=m-f.width);e.translate(h,c)}else d.remove(this.set)}})})();(function(){var d=window.AmCharts;d.ObjectList=d.Class({construct:function(a){this.divId=a},init:function(a){this.chart=a;var b=this.divId;this.container&&(b=this.container);this.div="object"!=typeof b?document.getElementById(b):b;b=document.createElement("div");b.className="ammapObjectList "+a.classNamePrefix+"-object-list-div";this.div.appendChild(b);this.addObjects(a.dataProvider,b)},addObjects:function(a,b){var c=this.chart,d=document.createElement("ul");d.className=c.classNamePrefix+"-object-list-ul";
var f;if(a.areas)for(f=0;f<a.areas.length;f++){var e=a.areas[f];void 0===e.showInList&&(e.showInList=c.showAreasInList);this.addObject(e,d)}if(a.images)for(f=0;f<a.images.length;f++)e=a.images[f],void 0===e.showInList&&(e.showInList=c.showImagesInList),this.addObject(e,d);if(a.lines)for(f=0;f<a.lines.length;f++)e=a.lines[f],void 0===e.showInList&&(e.showInList=c.showLinesInList),this.addObject(e,d);0<d.childNodes.length&&b.appendChild(d)},addObject:function(a,b){var c=this;if(a.showInList&&void 0!==
a.title){var d=c.chart,f=document.createElement("li");f.className=d.classNamePrefix+"-object-list-li";var e=document.createTextNode(a.title),g=document.createElement("a");g.className=d.classNamePrefix+"-object-list-a";g.appendChild(e);f.appendChild(g);b.appendChild(f);this.addObjects(a,f);g.onmouseover=function(){c.chart.rollOverMapObject(a,!1)};g.onmouseout=function(){c.chart.rollOutMapObject(a)};g.onclick=function(){c.chart.clickMapObject(a)}}}})})();
order destination code map lat long volume origin source World Other North Other South Afghanistan Albania Algeria American Samoa Andorra Angola Anguilla Antigua and Barbuda Argentina Armenia Aruba Australia Austria Azerbaijan Bahamas Bahrain Bangladesh Barbados Belarus Belgium Belize Benin Bermuda Bhutan Bolivia Bosnia and Herzegovina Botswana Brazil British Virgin Islands Brunei Darussalam Bulgaria Burkina Faso Burundi Cambodia Cameroon Canada Cape Verde Caribbean Netherlands Cayman Islands Central African Republic Chad Channel Islands Chile China Hong Kong Macau Colombia Comoros Republic of Congo Cook Islands Costa Rica Côte d'Ivoire Croatia Cuba Curaçao Cyprus Czech Republic North Korea Democratic Republic of Congo Denmark Djibouti Dominica Dominican Republic Ecuador Egypt El Salvador Equatorial Guinea Eritrea Estonia Ethiopia Faroe Islands Falkland Islands Fiji Finland France French Guiana French Polynesia Gabon Gambia Georgia Germany Ghana Gibraltar Greece Greenland Grenada Guadeloupe Guam Guatemala Guinea Guinea-Bissau Guyana Haiti Holy See Honduras Hungary Iceland India Indonesia Iran Iraq Ireland Isle of Man Israel Italy Jamaica Japan Jordan Kazakhstan Kenya Kiribati Kuwait Kyrgyzstan Lao People's Democratic Republic Latvia Lebanon Lesotho Liberia Libya Liechtenstein Lithuania Luxembourg Madagascar Malawi Malaysia Maldives Mali Malta Marshall Islands Martinique Mauritania Mauritius Mayotte Mexico Federated States of Micronesia Monaco Mongolia Montenegro Montserrat Morocco Mozambique Myanmar Namibia Nauru Nepal Netherlands New Caledonia New Zealand Nicaragua Niger Nigeria Niue Northern Mariana Islands Norway Oman Pakistan Palau Panama Papua New Guinea Paraguay Peru Philippines Poland Portugal Puerto Rico Qatar South Korea Moldova Reunion Romania Russia Rwanda Saint Helena Saint Kitts and Nevis Saint Lucia Saint Pierre and Miquelon Saint Vincent and the Grenadines Samoa San Marino Sao Tome and Principe Saudi Arabia Senegal Serbia Seychelles Sierra Leone Singapore Sint Maarten Slovakia Slovenia Solomon Islands Somalia South Africa South Sudan Spain Sri Lanka Palestinian Territories Sudan Suriname Swaziland Sweden Switzerland Syria Tajikistan Thailand Yugoslav Timor-Leste Togo Tokelau Tonga Trinidad and Tobago Tunisia Turkey Turkmenistan Turks and Caicos Islands Tuvalu Uganda Ukraine United Arab Emirates United Kingdom Tanzania United States US Virgin Islands Uruguay Uzbekistan Vanuatu Venezuela Viet Nam Wallis and Futuna Islands Western Sahara Yemen Zambia Zimbabwe
1 WORLD 14165774 India 231522215 2554298 4100834 5108886 1250192 1716202 2863 7613 512125 3895 56700 980580 777313 15468 483374 517988 1279672 45950 61719 7757662 100224 1570882 518951 62570 480262 12766 90123 764862 1524583 56392 1769639 8448 48459 1378735 1641243 273084 1113662 345240 1307417 171685 11129 4391 135587 348555 27767 604008 9344919 788568 136980 2448385 108901 185116 25507 130364 978250 757903 1476344 84611 148102 449766 211216 1200776 252435 14085 74793 1190441 1144408 3469449 1526093 119125 356702 186281 585853 13390 330 197057 308420 2061829 4376 4440 31177 69334 739045 3970078 719236 15740 903714 17729 57910 15382 2789 1049865 395857 90392 462187 1170752 192 659606 527429 35771 14165774 2992338 1058557 2318696 771572 1241 356445 2963875 1094899 882123 639233 3787623 439925 4793 323034 718186 1291837 333632 683061 323320 352252 142192 3918 570979 56076 164873 282036 1673671 1327 869894 109541 9821 17273 135803 169374 7085 13212419 29318 52544 65654 283180 14586 2854502 797355 2647982 137498 1549 1044688 998666 6355 754943 655117 271493 1029466 7127 10043 197601 24029 5682673 5532 149952 39066 770441 1373387 5481683 3662384 1984230 1712357 19927 2594382 851512 2749 3333290 10835088 320678 1395 28756 56027 505 60295 129150 3334 36082 262851 533085 1317970 9426 332380 303394 21061 349279 158076 3631 1921361 786618 777847 1170717 1245187 3640155 1158816 262006 96813 335762 620378 680959 602840 894259 515396 33382 456181 2762 60319 374092 643612 3108971 244921 1665 4021 628882 5560188 131494 5178027 248878 2979930 4176 336741 1894542 8766 630686 2600693 8566 101565 923235 228779 656207
2 More developed regions 13133670 Mexico 135583436 891056 684710 416685 1243749 1619259 1030 7498 221068 1822 25882 637858 734053 9830 394726 476770 909757 43989 13774 671762 94653 1375905 477997 55856 27917 12522 3492 310658 1520153 3598 1396824 4090 16131 631779 24945 20418 311017 194550 1176989 150086 7760 4245 18191 10148 27631 325683 5044033 690145 21985 1299524 36389 107142 25463 97848 139838 753625 1391255 69767 129741 441093 18715 171284 236894 7942 52141 1066097 1060613 510656 1459452 25448 124203 176095 331158 13375 247 194358 300375 1516547 253 3570 22560 53205 626337 3282642 382583 15646 766161 17213 49016 3883 200 965769 75724 40306 412156 817857 188 598382 506150 34953 4177249 423163 953459 715615 753572 1238 273806 2635636 1060554 580707 127244 3606622 333281 3699 66527 671487 272107 315067 513939 1373 95806 80394 3777 530068 55595 128458 21574 342603 921 96646 109007 9171 2345 29779 152493 18 13133670 19887 51945 37350 227920 11626 2629819 89485 149702 4647 1316 188649 881651 2043 702650 309002 9505 632782 7073 7385 172046 10539 1331846 3042 123586 38786 121645 908763 3257427 3502186 1713004 1685712 5525 2247639 794456 389 3176062 6885807 19950 168 15432 39529 451 44503 97695 3261 19217 144217 281591 1200907 7911 71754 174847 17911 347688 156250 3152 366492 659524 59853 875986 665014 70229 54531 224579 3177 317071 575544 263428 511098 654404 465619 13187 47163 2610 57890 352362 589801 2787349 219951 1349 2503 112121 4832724 43456 4458581 88053 1202687 73 165701 1477566 2805 496497 2263164 109 103 76046 59959 198358
3 Less developed regions 9988525 India 95938779 1663242 3416124 4692201 6443 96943 1833 115 291057 2073 30818 342722 43260 5638 88648 41218 369915 1961 47945 7085900 5571 194977 40954 6714 452345 244 86631 454204 4430 52794 372815 4358 32328 746956 1616298 252666 802645 150690 130428 21599 3369 146 117396 338407 136 278325 4300886 98423 114995 1148861 72512 77974 44 32516 838412 4278 85089 14844 18361 8673 192501 1029492 15541 6143 22652 124344 83795 2958793 66641 93677 232499 10186 254695 15 83 2699 8045 545282 4123 870 8617 16129 112708 687436 336653 94 137553 516 8894 11499 2589 84096 320133 50086 50031 352895 4 61224 21279 818 9988525 2569175 105098 1603081 18000 3 82639 328239 34345 301416 511989 181001 106644 1094 256507 46699 1019730 18565 169122 321947 256446 61798 141 40911 481 36415 260462 1331068 406 773248 534 650 14928 106024 16881 7067 78749 9431 599 28304 55260 2960 224683 707870 2498280 132851 233 856039 117015 4312 52293 346115 261988 396684 54 2658 25555 13490 4350827 2490 26366 280 648796 464624 2224256 160198 271226 26645 14402 346743 57056 2360 157228 3949281 300728 1227 13324 16498 54 15792 31455 73 16865 118634 251494 117063 1515 260626 128547 3150 1591 1826 479 1554869 127094 717994 294731 580173 3569926 1104285 37427 93636 18691 44834 417531 91742 239855 49777 20195 409018 152 2429 21730 53811 321622 24970 316 1518 516761 727464 88038 719446 160825 1777243 4103 171040 416976 5961 134189 337529 8457 101462 847189 168820 457849
4 Least developed countries 956801 India 10958217 274129 822420 2 0 10851 1812 0 192340 0 21264 1075 0 0 2361 352 0 0 29603 2956 0 0 1415 0 84422 0 79823 0 0 222 15843 0 0 0 53328 243348 20549 42804 2705 15829 0 0 92935 149016 0 725 259746 119 0 1651 6286 38875 16 546 818320 0 2576 0 0 0 324 717898 214 3827 0 4799 0 30000 0 488 159464 0 92139 0 0 743 0 50269 0 366 5906 9761 0 5792 96759 0 36 0 0 0 0 0 200988 37701 0 4 0 0 0 0 956801 161943 39 10514 29 0 0 4260 0 14615 0 0 85684 47 69 0 86865 0 4756 7841 141996 3220 0 0 0 9607 87743 229607 0 159644 0 0 0 59198 504 0 610 0 0 0 0 0 3963 73642 197997 1528 151 39152 336 251 2500 0 113126 127469 8 0 14047 11 72443 0 0 117 0 704 1006 0 18638 3082 25 548 0 850 40 1017 270724 0 0 0 0 0 5 0 8865 2322 178470 0 374 255131 9625 0 0 0 135 798672 25186 608026 4066 703 4072 581468 0 113 113 1072 3254 24658 43698 0 0 76055 122 118 0 602 0 0 0 1131 237081 54 151 38447 113929 55928 0 571 1232 416 5005 76048 734 0 556 56653 66647
5 Less developed regions excluding least developed countries 9031724 India 84980562 1389113 2593704 4692199 6443 86092 21 115 98717 2073 9554 341647 43260 5638 86287 40866 369915 1961 18342 7082944 5571 194977 39539 6714 367923 244 6808 454204 4430 52572 356972 4358 32328 746956 1562970 9318 782096 107886 127723 5770 3369 146 24461 189391 136 277600 4041140 98304 114995 1147210 66226 39099 28 31970 20092 4278 82513 14844 18361 8673 192177 311594 15327 2316 22652 119545 83795 2928793 66641 93189 73035 10186 162556 15 83 1956 8045 495013 4123 504 2711 6368 112708 681644 239894 94 137517 516 8894 11499 2589 84096 119145 12385 50031 352891 4 61224 21279 818 9031724 2407232 105059 1592567 17971 3 82639 323979 34345 286801 511989 181001 20960 1047 256438 46699 932865 18565 164366 314106 114450 58578 141 40911 481 26808 172719 1101461 406 613604 534 650 14928 46826 16377 7067 78139 9431 599 28304 55260 2960 220720 634228 2300283 131323 82 816887 116679 4061 49793 346115 148862 269215 46 2658 11508 13479 4278384 2490 26366 163 648796 463920 2223250 160198 252588 23563 14377 346195 57056 1510 157188 3948264 30004 1227 13324 16498 54 15792 31450 73 8000 116312 73024 117063 1141 5495 118922 3150 1591 1826 344 756197 101908 109968 290665 579470 3565854 522817 37427 93523 18578 43762 414277 67084 196157 49777 20195 332963 30 2311 21730 53209 321622 24970 316 387 279680 727410 87887 680999 46896 1721315 4103 170469 415744 5545 129184 261481 7723 101462 846633 112167 391202
6 Sub-Saharan Africa 1616175 Burkina Faso 17228396 415230 947988 50 83 11141 4 0 283372 0 0 2370 0 0 6514 2783 1 1 89 2937 28 110 9748 0 452252 57 0 83 166 52715 4184 15 14 3867 1616175 252611 0 150190 5549 20199 694 0 117251 318481 0 366 57506 1263 0 271 65553 76594 0 0 836998 515 1419 7953 2655 1077 550 1027717 3021 3827 0 0 0 40635 2 93573 160783 74 116098 0 2 24 351 192925 1 0 8553 16034 0 36715 334969 27 4914 0 0 0 0 63 319019 47697 28 5 0 0 3 22 98327 1331 527 326 12567 0 3362 26376 135 1773 53 0 102914 0 153 18 31 391 9832 321909 256246 7497 0 297 25 36246 260369 1015 90 772242 239 0 0 104741 16526 6983 270 0 24 1 0 0 5668 706213 203 132756 16 275 21026 0 2939 103 261378 362146 22 20 1189 43 17305 0 41 61 83 149 2185 9276 73161 0 25 1867 0 1166 1235 7123 299906 166 37 0 0 0 0 0 16772 2756 247532 2840 1437 260220 890 1617 296 0 4 1115579 89488 648667 2722 3342 427 567082 0 93605 722 1996 541 0 1088 114 7 408932 0 0 20 856 1109 0 0 0 515773 3829 320 338100 159770 26494 70 80 0 1 211 176 0 0 636 167696 457206
7 AFRICA 1616230 Burkina Faso 18644454 421267 964036 497 502 45626 4 0 283411 0 24 2447 358 0 7723 3996 47 22 1651 4955 28 1339 10840 7 452265 57 1 84 625 52725 4542 15 82 3923 1616230 252624 7 150283 10150 20199 694 0 117319 319869 0 401 62470 1270 0 310 72489 77155 0 1 837990 566 1424 7953 2710 1161 614 1028322 4266 6128 0 0 17 61225 1144 93574 164551 120 119282 0 2 25 1692 209560 8 0 8560 16050 10 48062 335962 40 9141 0 0 0 0 76 319979 49089 28 5 0 1 475 23 106145 22855 1101 111556 12623 0 3413 40639 135 3396 33992 1296 103383 0 17585 106 32 392 28380 321916 256302 24472 1 304 32 36267 260408 13803 167 773070 240 0 0 105756 16531 6983 316 0 408 44 0 0 19794 706237 220 132769 16 282 23883 0 2977 104 261876 366747 22 20 1658 2777 21275 0 42 62 84 154 9304 10375 73207 0 2310 3025 88 1166 2198 18818 299919 166 38 0 0 0 1 1 16779 61354 251003 2841 1466 260551 1972 1617 334 5 4 1285664 90535 654576 3895 3855 440012 592636 0 93612 1931 3503 46903 1099 5689 165 7 408939 0 0 20 5834 5203 331 0 0 515845 5243 4802 349774 160141 42451 70 85 526 1 258 177 0 101451 36280 167718 457228
8 Eastern Africa 1096381 Somalia 5217048 118488 312710 0 0 2953 4 0 45910 0 0 6 0 0 258 17 1 0 0 351 0 0 1184 0 0 0 0 0 0 4240 1 3 0 3 0 223742 0 9 967 6653 0 0 4075 4454 0 0 27278 74 0 0 65452 27129 0 0 76 1 61 0 0 1 199 654298 176 3827 0 0 0 4534 0 0 15672 0 46882 0 0 0 1 114717 1 0 1 0 0 2171 114 0 37 0 0 0 0 0 3 0 0 1 0 0 3 6 40595 134 1 0 14 0 3 1652 0 363 0 0 83361 0 0 0 0 0 3 7841 0 180 0 1 1 35238 186116 162 37 274 0 0 0 0 6458 6983 0 0 0 1 0 0 11 233880 0 749 0 156 219 0 1 0 0 3250 7 0 1 12 4919 0 0 3 0 0 669 0 4344 0 0 197 0 854 4 470 145066 0 13 0 0 0 0 0 0 0 100 1 542 1 41 0 1 0 0 1096381 31074 349436 69 568 0 456900 0 91 36 169 1 0 228 0 0 3 0 0 1 0 0 0 0 0 506921 14 1 21872 146364 3032 0 0 0 1 1 64 0 0 447 83131 66570
9 Burundi bi Burundi -3.373 29.919 148852 Democratic Republic of Congo E 254477 2877 18277 538 148852 268 916 57107 791 24851
10 Comoros km Comoros -11.646 43.333 9607 Madagascar E 12511 597 754 482 76 9607 850 145
11 Djibouti dj Djibouti 11.825 42.590 102305 Somalia E 123537 1847 5544 13549 102305 292
12 Eritrea er Eritrea 15.179 39.782 2434 Somalia I 15798 687 1519 344 1037 134 190 1672 108 432 118 348 765 1096 463 2434 121 1476 207 1510 56 521 239 321
13 Ethiopia et Ethiopia 9.145 40.490 457483 Somalia E 718241 18052 54157 41 105 3827 8038 155 457483 154372 21636 225 150
14 Kenya ke Kenya -0.024 37.906 517666 Somalia E 955452 17149 31940 3530 5155 1220 21857 489 55 5142 517666 91 41721 5847 271149 32441
15 Madagascar mg Madagascar -18.767 46.869 10185 France E 34313 3210 1110 2953 26 78 108 2813 5510 5 50 57 10185 264 4391 237 52 31 312 2249 0 123 7 156 156 169 61
16 Malawi mw Malawi -13.254 34.302 52021 Mozambique E 206578 11243 33729 5042 1340 2123 2295 52021 4394 52 7849 1402 9128 40673 35287
17 Mauritius mu Mauritius -20.348 57.552 23210 China E 44997 1059 3004 145 99 23210 74 2878 360 9500 307 44 1631 143 168 40 890 1326 119
18 Mayotte yt Mayotte -12.828 45.166 56791 Comoros E 73107 606 910 56791 9544 5256
19 Mozambique mz Mozambique -18.666 35.530 76058 Malawi E 218811 15999 55080 6653 2294 2390 7695 76058 1260 4340 8735 7511 5835 24961
20 Reunion re Reunion -21.115 55.536 90192 France E 136493 5561 7971 2375 90192 17982 5429 6983
21 Rwanda rw Rwanda -1.940 29.874 175738 Democratic Republic of Congo E 452406 14675 42645 17 495 64198 130 105 175738 233 189 355 1439 11 106501 160 45373 142
22 Seychelles sc Seychelles -4.680 55.492 6141 India E 12079 0 4 1 6 50 17 1 0 210 37 1 3 3 0 0 17 0 485 0 0 3 13 1 41 1 0 3 0 10 3 1 228 1 1 80 20 1 3 0 0 1 3 6 6141 134 1 14 3 115 0 1 389 0 3 0 4 1 1 762 14 19 37 0 0 525 0 0 1 11 1 3 156 4 1 130 7 1 1 23 3 669 0 4 1 4 4 91 1 13 0 6 1 1 1 1 61 242 0 24 568 3 6 13 1 228 1 28 14 1 275 20 11 0 1 1 3 0 0 6 14
23 Somalia so Somalia 5.152 46.200 2046 Ethiopia I 24593 7498 14998 4 3 34 2046 3 0 2 5
24 South Sudan ss South Sudan 6.877 31.307 407925 Sudan I 629577 536 2144 4075 4454 61338 4421 2851 8249 1215 8212 145 165 3039 407925 120808
25 Uganda ug Uganda 1.373 32.290 169074 Democratic Republic of Congo E 531401 18 918 111 36 19190 235 437 63 15 149 169074 173 3529 1070 245 239 36 4350 427 194 44359 0 8 10 215 3 731 196 256 70411 0 14036 151864 45 21285 30 3 1278 25093 1060 7 2
26 Tanzania tz Tanzania -6.369 34.889 128173 Burundi E 312778 2849 4313 1226 140 128173 290 586 24767 62070 951 7867 566 27481 146 6947 192 19948 633 656 1196 367 2344 700 88 5644 1070 1270 9462 836
27 Zambia zm Zambia -13.134 27.849 44339 Angola E 98907 861 6777 44339 46 61 2010 9 88 94 1019 22670 46 30 88 94 1973 72 141 3940 109 309 58 78 5484 94 875 263 588 1281 261 5149
28 Zimbabwe zw Zimbabwe -19.015 29.155 160006 Mozambique E 360992 13164 26920 4039 521 3204 98384 160006 713 11571 15561 26909
29 Middle Africa 345771 Democratic Republic of Congo 2242414 68798 173659 0 0 106 0 0 177990 0 0 0 0 0 0 0 0 0 0 0 0 0 477 0 61504 0 0 0 0 0 0 0 0 0 6838 23801 0 96725 380 8587 0 0 98956 184380 0 0 1143 0 0 0 0 21016 0 0 3504 0 397 0 0 0 229 345771 0 0 0 0 0 74 0 84486 0 0 0 0 0 0 0 46161 0 0 3155 0 0 638 6067 0 0 0 0 0 0 0 5146 56 0 0 0 0 0 0 0 0 0 0 0 0 16 354 0 30 0 0 0 0 0 0 0 0 3919 0 0 977 0 0 0 0 0 0 0 78634 0 0 0 2432 0 0 0 0 0 0 0 0 681 232 0 828 0 0 0 0 0 0 3019 154751 0 0 0 0 0 0 0 0 0 0 0 0 14106 0 0 186 0 0 0 1911 148063 0 0 0 0 0 0 0 15065 132 41651 0 0 0 0 0 0 0 0 0 5858 213442 1198 0 0 108786 0 0 0 101 28 0 0 0 0 24090 0 0 0 214 0 0 0 0 29 0 0 61 0 1195 0 0 0 0 0 0 0 0 94 287 0
30 Angola ao Angola -11.203 17.874 35345 Democratic Republic of Congo I 87436 6728 7077 8559 30 985 38 35345 313 232 828 12707 995 7466 5846 287
31 Cameroon cm Cameroon 7.370 12.355 115621 Nigeria E 291792 7575 50563 105049 12984 115621
32 Central African Republic cf Central African Republic 6.611 20.939 66690 Chad E 134237 101 337 161 52 11463 102 66690 127 2388 233 75 34601 74 238 5015 308 124 91 56 354 671 792 97 692 2453 295 132 2707 2386 334 101 286 61 546 94
33 Chad td Chad 15.454 18.732 206427 South Sudan E 439116 218 4441 27597 74398 637 462 788 260 977 2327 13199 206427 107385
34 Republic of Congo cg Republic of Congo -0.228 15.828 266319 Democratic Republic of Congo I 431470 3349 5029 30592 11271 8382 24255 7837 685 397 266319 1173 7656 2347 430 866 25160 2335 1069 1911 18634 9841 1808 124
35 Democratic Republic of Congo cd Democratic Republic of Congo -4.038 21.759 145561 Angola E 446924 48067 96132 145561 23485 1393 127677 4017 563 29
36 Equatorial Guinea gq Equatorial Guinea 1.651 10.268 4274 France E 10141 594 1353 747 4274 240 336 1399 1198
37 Gabon ga Gabon -0.804 11.609 82825 Equatorial Guinea E 394953 1979 8383 106 1055 477 49730 6661 161 48255 278 4311 331 15547 3233 154 8485 82825 15308 84 6062 4742 16 30 2382 52549 681 22779 186 200 6200 29057 12 28 21927 214 525
38 Sao Tome and Principe st Sao Tome and Principe 0.186 6.613 681 Angola E 6345 288 681 681 166 16 103 281 28 303 463 66 559 250 136 5 133 363 35 557 46 612 504 69
39 Northern Africa 439589 Palestinian Territories 1862765 11648 38492 447 419 34485 0 0 39 0 24 77 358 0 1209 1213 46 21 1562 2018 0 1229 1092 7 13 0 1 1 459 10 358 0 68 56 55 17 7 93 4601 0 0 0 13898 77187 0 35 6109 7 0 39 6936 562 0 1 992 51 5 0 55 84 64 1429 1245 2301 0 0 17 34417 1142 1 147938 46 65615 0 0 1 1341 16635 7 0 7 16 10 11347 993 13 4227 0 0 0 0 13 961 1392 0 0 0 1 472 1 9133 21524 574 111232 56 0 51 14263 0 1623 33939 1296 3130 0 17432 88 1 1 18548 7 56 18579 1 7 7 21 39 12788 77 1519 1 0 0 1015 5 0 46 0 384 43 0 0 14126 24 17 13 0 7 2857 0 38 1 498 19876 0 0 469 2734 3970 0 1 1 1 5 7119 1099 46 0 2285 1158 88 0 963 11695 13 0 1 0 0 0 1 1 7 58598 3471 1 29 331 1082 0 38 5 0 170215 1047 89564 1173 513 439589 25554 0 7 1209 1507 46362 1099 4601 51 0 7 0 0 0 4979 4094 331 0 0 1353 1414 4482 11674 372 15957 0 5 526 0 47 1 0 101451 35644 22 22
40 Algeria dz Algeria 28.034 1.660 101451 Western Sahara I 270407 167 167 215 277 169 150 634 191 683 955 132 171 317 157 440 407 184 1116 1561 137 582 1075 2901 15208 1486 223 4532 178 2399 2457 4665 1760 1087 393 634 376 546 979 151 315 159 132 1609 7878 249 149 23215 145 395 161 63544 3205 167 208 6165 151 634 685 564 195 617 1606 2196 101451 4750
41 Egypt eg Egypt 26.821 30.802 95528 Palestinian Territories E 297448 132 124 1478 39 24 77 106 308 309 46 21 398 515 314 279 7 13 1 1 136 10 106 68 56 55 13 7 93 1173 68 354 35 1266 7 39 1769 166 1 246 51 5 55 84 64 179 318 587 17 291 1 817 46 753 1 342 2069 7 7 16 10 2895 253 13 1078 13 51 128 1 140 1 1996 5380 170 28192 56 51 2754 414 8402 331 139 4446 88 1 1 4557 7 56 8648 1 7 7 21 39 3262 77 140 1 147 5 46 113 43 2018 24 17 13 7 729 38 1 147 1173 139 697 1013 1 1 1 5 1816 282 46 583 296 88 246 2983 13 1 1 1 7 14604 461 1 29 97 276 38 5 43038 267 732 299 152 95528 5941 7 308 384 11430 282 1173 51 7 1269 1044 97 72 360 1143 2978 110 4071 5 156 47 1 8803 22 22
42 Libya ly Libya 26.335 17.228 280475 Palestinian Territories I 755974 315 295 3520 252 734 737 949 1226 746 663 323 252 2794 843 3015 4212 395 585 426 756 1397 20590 694 1944 1795 815 4928 6891 603 2567 305 332 4747 12806 404 67123 6559 986 20005 787 330 10587 10849 7766 332 351 271 4803 1735 351 2794 330 1661 2411 4324 666 1387 703 585 7103 34773 1099 234 657 102471 635 1742 713 361 280475 14143 734 915 27214 666 2794 3024 2486 234 859 2722 7090 261 9690 370 20957
43 Morocco ma Morocco 31.792 -7.093 17637 Algeria I 50771 3692 9390 17637 4961 437 401 2080 1000 685 1569 1343 405 2950 1534 1553 1134
44 Sudan sd Sudan 12.863 30.218 144170 Eritrea E 446707 5611 22444 4 13830 75799 1145 1 824 0 13827 144170 62431 1 1315 2 2661 0 1604 691 15275 0 130 83655 4 0 1 1281 1
45 Tunisia tn Tunisia 33.887 9.537 11775 Algeria E 36526 2266 6539 11775 29 567 229 3305 306 1384 2093 6218 956 90 38 731
46 Western Sahara eh Western Sahara 24.216 -12.886 1662 Senegal I 4932 79 119 75 256 909 959 356 517 1662
47 Southern Africa 472074 Mozambique 2625761 9452 42834 48 83 230 0 0 59029 0 0 2213 0 0 4148 2766 0 1 89 2569 28 110 7808 0 181 57 0 83 166 48475 2881 12 12 3864 0 5051 0 2454 3471 0 687 0 61 0 0 306 26907 1189 0 271 101 22169 0 0 617 514 828 7889 2655 1076 116 26621 2843 0 0 0 0 3403 0 0 941 74 6750 0 0 24 350 7438 0 0 292 0 0 31803 7541 27 4877 0 0 0 0 63 33 28 28 0 0 0 0 16 54303 1197 487 139 12551 0 3291 23495 135 1289 53 0 16817 0 84 18 31 391 683 314068 560 152 0 296 20 1008 74253 849 53 101 239 0 0 0 10066 0 267 0 24 0 0 0 1069 472074 203 131179 16 119 20416 0 2938 103 21 19338 15 20 1188 31 12146 0 41 58 83 143 1473 9201 52629 0 0 1226 0 312 1191 3335 3910 166 24 0 0 0 0 0 0 434 2705 2839 895 433 849 1601 295 0 4 19068 52452 1544 1074 2742 95 1272 0 93514 625 1448 110 0 860 114 0 0 0 0 17 107 1109 0 0 0 7542 3740 168 313194 13392 17998 0 80 0 0 210 112 0 0 80 84164 390634
48 Botswana bw Botswana -22.328 24.685 33973 South Africa E 146456 2019 15790 3236 408 380 3857 3091 360 1173 8679 653 569 652 2970 584 4190 1715 1080 1682 664 678 408 638 485 242 33973 1755 635 455 1500 7534 2705 1164 11700 28832
49 Lesotho ls Lesotho -29.610 28.234 1060 South Africa E 3095 158 1370 13 21 24 18 45 25 26 9 45 1060 25 27 25 67 46 91
50 Namibia na Namibia -22.958 18.490 17493 Angola E 51448 6751 8424 17493 257 7203 7718 3602
51 South Africa za South Africa -30.559 22.938 462412 Mozambique E 2399238 20 12248 48 83 230 38192 2213 3697 2766 1 89 2569 28 110 7808 181 57 83 166 48163 2881 12 12 3864 4881 2454 3075 687 61 0 306 23026 1189 0 271 101 22113 617 514 828 7889 2655 1076 116 23404 2483 3403 941 74 6726 24 350 7438 292 30630 7523 27 4877 63 33 28 28 16 45579 1197 487 139 11898 3291 22926 135 1289 53 16164 84 18 31 391 683 310925 524 152 296 20 424 70038 849 53 101 239 8351 267 24 1069 462412 203 129488 16 119 19752 2918 103 21 18659 15 20 780 31 11463 41 58 83 143 1473 9201 52144 1226 312 1191 3335 3802 166 24 434 2705 2839 653 420 849 1601 295 4 18999 1544 1074 970 95 1272 92854 170 1448 110 860 114 17 107 1109 5972 3740 168 305660 10662 16566 80 210 112 80 64700 358109
52 Swaziland sz Swaziland -26.523 31.466 10216 South Africa E 25524 504 5002 95 43 34 0 170 16 56 126 24 0 1 0 173 36 8556 20 1 0 108 13 69 10216 17 43 201
53 Western Africa 1609337 Burkina Faso 6696466 212881 396341 2 0 7852 0 0 443 0 0 151 0 0 2108 0 0 0 0 17 0 0 279 0 390567 0 0 0 0 0 1302 0 2 0 1609337 13 0 51002 731 4959 7 0 329 53848 0 60 1033 0 0 0 0 6279 0 0 832801 0 133 64 0 0 6 203 2 0 0 0 0 18797 2 9087 0 0 35 0 2 0 0 24609 0 0 5105 16034 0 2103 321247 0 0 0 0 0 0 0 313836 47613 0 4 0 0 0 0 2114 0 39 185 2 0 52 875 0 91 0 0 75 0 69 0 0 0 5227 0 255686 4584 0 0 4 0 0 4 0 692542 0 0 0 102309 2 0 3 0 0 0 0 0 3907 27 0 0 0 0 391 0 0 0 258338 169532 0 0 0 0 240 0 0 0 0 6 43 75 2082 0 25 258 0 0 40 1407 2867 0 0 0 0 0 0 0 1707 2190 203076 0 0 259786 0 16 0 0 0 0 104 590 381 32 328 124 0 0 61 278 402 0 0 0 7 384839 0 0 2 534 0 0 0 0 0 75 151 2973 13 4269 70 0 0 0 0 0 0 0 15 114 2
54 Benin bj Benin 9.308 2.316 72330 Niger E 234241 2344 33266 9495 667 1823 13118 1715 9747 1231 72330 42575 45930
55 Burkina Faso bf Burkina Faso 12.238 -1.562 557968 Côte d'Ivoire E 696983 2302 18351 4311 557968 33242 45208 13163 3682 2874 15882
56 Cape Verde cv Cape Verde 15.120 -23.605 4998 Guinea-Bissau E 14874 202 1215 368 4 11 285 7 23 7 86 64 201 7 5 67 42 411 4998 407 2 4 6 3 25 37 668 2 1155 696 1707 1473 14 16 143 13 7 21 52 350 70
57 Côte d'Ivoire ci Côte d'Ivoire 7.540 -5.547 1455427 Burkina Faso E 2446171 43497 46262 60797 1455427 328 50 48070 106803 370 92688 4121 400332 8993 55979 43761 21359 742 56592
58 Gambia gm Gambia 13.443 -15.310 100736 Senegal E 162919 1583 3167 34330 10484 7867 2770 100736 1982
59 Ghana gh Ghana 7.947 -1.023 142688 Togo E 358829 11660 20405 15 37 19502 15 92876 133 320 17 264 10670 35 45 35 254 42 161 989 52 268 66 17 1142 2672 7819 19 284 9205 32380 103 43 75 103 582 116 259 26 32 13 227 81 142688 2117 13 952
60 Guinea gn Guinea 9.946 -9.697 226415 Sierra Leone E 378464 235 643 131 1493 157 305 189 63 85 6710 39 1044 515 539 850 1777 39 66 17 542 118353 2 9873 245 885 578 3 151 89 304 433 4299 226415 38 20 932 54 351
61 Guinea-Bissau gw Guinea-Bissau 11.804 -15.180 7422 Senegal E 18024 558 91 54 521 104 1410 4655 847 527 776 7422 766 293
62 Liberia lr Liberia 6.428 -9.429 150586 Côte d'Ivoire E 225484 1664 4887 3 232 13 150586 16 745 49 7399 37026 119 746 13 912 1326 16 59 5152 358 13165 15 59 8 383 60 473
63 Mali ml Mali 17.571 -3.996 80258 Côte d'Ivoire E 195553 1961 17654 635 75 596 23145 650 310 86 4427 80258 2695 4913 654 2741 16833 643 14488 6039 1748 105 12310 1350 982 255
64 Mauritania mr Mauritania 21.008 -10.941 45775 Senegal E 90206 415 1657 2 3505 147 17 137 1188 347 847 114 116 60 346 423 8 76 489 3018 185 68 451 6635 2575 4 185 121 69 257 300 16358 740 54 328 4 25 156 40 137 661 45775 85 185 328 44 30 301 253 534 151 240 15
65 Niger ne Niger 17.608 8.082 46584 Mali E 132294 2060 8590 475 18483 19945 430 780 1241 1734 163 46584 20062 1187 479 67 10014
66 Nigeria ng Nigeria 9.082 8.675 226349 Benin E 1233592 122445 165547 2067 226349 7883 48162 4042 52251 4138 18263 9087 6176 176493 5878 4600 18330 126631 34196 83047 4505 3640 109862
67 Saint Helena sh Saint Helena -27.992 26.717 401 United Kingdom E 590 4 2 10 2 2 2 4 4 7 2 7 2 2 2 104 2 2 401 17 10 2
68 Senegal sn Senegal 14.497 -14.452 40955 Mauritania I 209398 11158 22315 3222 2775 498 780 2160 10652 3965 671 1373 39594 22670 849 26193 40955 3167 1300 652 1096 11453 1284 616
69 Sierra Leone sl Sierra Leone 8.461 -11.780 61510 Guinea E 96368 593 1257 213 29 31 5 229 368 6 2472 111 1341 61510 20 372 6 51 815 22144 743 116 132 2091 134 13 62 662 37 343 358 104
70 Togo tg Togo 8.620 0.825 54857 Benin I 202476 10204 51034 54857 13 19 17 29 5154 92 4906 594 37764 710 9 2371 15871 16183 2285 364
71 ASIA 9886425 India 70846771 1205384 2354799 4691328 5462 48387 0 12 529 0 22331 45130 41846 69 80108 28500 369778 11 46201 7091120 4 193092 20919 2 18 11 86596 65 3641 31 509378 112 32080 740563 2 9 804301 91 88047 131 0 2 27 18499 2 3670 4779763 92629 114931 3180 14 538 0 128 18 451 233 13 15503 2741 190465 885 9240 12 12 177 473 2894939 24 17 67909 9623 133864 0 0 190 5464 103438 0 1 8 22 112509 570497 2534 10 123496 0 2 72 1201 63 16 1 8 7 0 36 15604 160 9886425 2558631 107945 1490650 4177 0 70370 16443 51 221783 475785 179609 2841 0 238747 46573 1017520 17571 114380 13 29 36860 1 39072 85 13 21 1325473 220 19 111 15 0 240 327 0 5338 0 11 28203 54865 0 201783 25 2497910 11 1 855527 55300 2 42816 17 24 30763 0 8 22013 10654 4336421 241 65 65 47 93636 2378221 132856 3692 72 12042 1005555 56284 8 148520 3923455 28 0 0 8 0 0 24 1 0 54982 122 112734 13 20 128957 0 650 240 2 269146 21156 63370 7778 586165 3127758 511609 157 3 12976 23866 352447 90623 279402 46771 20134 8 0 0 25 46803 313991 24597 0 2 781 712675 83110 329024 503 481240 8 6575 416350 4 550 373241 23 0 810841 1030 388
72 Central Asia 3441692 Russia 5471533 21046 91718 8137 0 110 0 0 0 0 0 0 30701 0 0 115 93618 0 0 0 0 143391 0 0 0 0 0 0 0 0 0 0 0 3977 0 0 0 0 0 0 0 0 0 0 0 0 7676 0 0 0 0 0 0 0 0 0 0 0 0 375 163139 0 260 0 0 0 0 0 0 0 0 7978 0 0 0 0 1087 0 0 0 0 0 33123 112879 0 0 2894 0 0 0 0 0 0 0 0 0 0 0 620 0 694 0 1009 0 0 0 258 0 0 0 0 120971 0 0 0 34163 0 11040 0 0 0 0 0 28007 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 629 0 0 0 0 0 0 0 0 0 0 108 0 0 0 0 0 0 0 157 0 0 0 0 0 0 57271 0 0 0 21223 33931 0 4481 3441692 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 125 0 125 58111 0 0 0 0 0 0 0 0 95809 11082 0 0 0 495311 0 454 0 349 0 0 330676 0 0 1013 0 0 0 0 0
73 Kazakhstan kz Kazakhstan 48.020 66.924 2367340 Russia E 3476233 8416 49997 50377 3355 5142 146487 2643 2173 95824 2534 6185 2643 3384 27414 18975 8440 2367340 37614 85383 2493 245351 304063
74 Kyrgyzstan kg Kyrgyzstan 41.204 74.766 124085 Russia E 226960 2503 2384 2644 5195 11045 303 1974 637 130 3631 2022 14369 1003 2943 3568 261 2954 535 124085 2449 1168 1112 29726 10198 121
75 Tajikistan tj Tajikistan 38.861 71.276 241702 Russia E 275735 200 799 7704 110 165 142 572 131 129 560 132 521 1009 707 11054 108 157 772 241702 653 377 1186 265 232 6348
76 Turkmenistan tm Turkmenistan 38.970 59.556 122476 Russia E 226327 2423 3537 2609 5127 10902 298 1949 629 128 3584 1996 14184 2267 990 2904 3521 266 2915 528 122476 2417 1152 29339 10067 119
77 Uzbekistan uz Uzbekistan 41.377 64.585 586089 Russia E 1266278 15920 84998 433 16867 115 33157 70495 622 1933 375 12598 131 4069 829 23175 12905 360 620 173 258 91711 14657 6404 18776 629 22768 1721 18850 3418 586089 125 125 15631 7453 7100 189709 189 117 773
78 Eastern Asia 3903184 China 7719960 80144 189591 0 0 0 0 0 0 0 0 4515 0 0 36490 659 0 0 0 31726 0 0 808 0 0 0 0 0 0 0 483890 0 0 14 0 0 17300 0 61269 0 0 0 0 0 0 0 3903184 28487 94772 0 0 0 0 0 0 0 0 0 0 16 551 0 647 0 0 0 0 1850 0 0 0 0 0 0 0 0 699 14267 0 0 0 0 0 10711 2165 0 0 0 0 0 0 0 0 0 0 0 0 0 11 0 61298 256263 6077 0 1985 0 0 3303 0 47558 0 1720 0 0 0 2042 2 0 0 0 0 0 0 0 0 0 0 32638 0 0 0 0 0 0 0 0 2231 0 0 27145 0 0 0 0 4748 0 0 20702 2412 0 9006 0 0 4471 0 0 454 0 35704 0 0 0 0 90787 527790 1152 2114 0 0 933122 0 0 0 22179 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12557 0 3 0 0 0 2075 0 2303 39286 0 0 0 0 1575 1923 0 0 124482 4 0 0 0 0 0 0 194 0 0 0 0 0 0 56419 0 189240 0 2 25887 0 0 203341 0 0 0 0 0
79 China cn China 35.862 104.195 222276 South Korea I 848511 28711 59897 8362 6282 115347 13779 6827 24318 15036 58639 8733 8121 7054 21641 121320 222276 6018 6361 23357 12623 42655 31154
80 North Korea kp North Korea 40.340 127.510 27623 China I 46813 668 1394 195 147 2686 320 27623 158 0 351 1366 203 189 164 504 2825 5176 140 148 544 294 993 725
81 Hong Kong hk Hong Kong 22.396 114.109 2280210 China E 2804753 4477 27041 8982 439 14485 2280210 70454 2167 1950 17789 132985 688 634 14016 15091 9223 1007 2221 7463 116505 109 4774 87 9761 396 772 718 18963 17455 13092 10799
82 Japan jp Japan 36.205 138.253 699290 South Korea E 2437169 12632 52886 4515 13365 644 13243 808 365857 2750 13902 655480 647 1850 696 9523 6669 2165 22101 29058 6077 1288 2650 9237 2231 1405 4398 2871 454 10622 68642 226179 1139 482 699290 8509 2796 1907 10352 1575 1187 46311 20812 59991 37973
83 Macau mo Macau 22.199 113.544 273862 China E 333269 19126 4782 273862 21502 11539 1523 935
84 Mongolia mn Mongolia 46.862 103.847 9163 China E 17225 143 428 205 15 14 135 9163 16 551 3 72 160 11 97 9 19 362 184 2 19 149 13 1606 2609 3 18 4 194 86 692 2 241
85 South Korea kr South Korea 35.908 127.767 656846 China E 1232220 14387 43163 5381 11615 14550 18648 656846 2505 1932 5924 34215 24244 1536 2042 27145 4748 11479 2387 1600 10382 49273 4816 2075 21653 34372 5149 71817 25887 122449
86 South-Eastern Asia 2150790 Myanmar 9509259 169734 404969 1721 220 465 0 0 517 0 1067 265 136 64 31021 797 0 0 1577 432101 0 0 684 0 0 0 0 35 0 0 1085 0 6178 206 0 0 767711 0 12531 131 0 0 0 0 0 95 645096 64021 20157 127 0 533 0 40 15 0 120 0 0 17 5833 45 1090 0 0 144 462 163 1 0 0 0 0 0 0 8 113 2672 0 0 0 0 0 6067 34 0 154 0 0 0 1199 34 0 0 0 0 0 21 246 55 347746 1221802 599 720 435 0 619 2406 0 156496 10644 0 55 0 172 0 930976 0 135 0 5 13306 0 0 0 0 0 1049953 0 0 0 14 0 0 0 0 147 0 3 0 0 0 6 0 2150790 0 0 212371 8749 0 33056 0 0 193 0 0 1969 411 159536 241 17 61 24 245 44914 111 1002 53 122 49719 0 0 35 97 4 0 0 0 0 0 0 0 0 2873 0 0 0 0 102181 0 0 0 0 1092 818 36 1313 27020 9 28 127 0 1245 1867 2151 0 105046 0 20124 3 0 0 0 572 886 0 0 0 0 0 435 50212 0 68473 0 14 0 0 8 140972 0 0 0 7 11
87 Brunei Darussalam bn Brunei Darussalam 4.535 114.728 102441 Japan E 206173 530 1597 934 2269 1047 6560 11367 352 102441 643 387 1454 25363 335 3468 10588 2285 4166 25451 4624 312
88 Cambodia kh Cambodia 12.566 104.991 37225 Viet Nam E 75566 913 2091 119 44 1550 119 44 281 40 97 108 16 127 265 175 53 46 30 41 156 57 30 125 48 31472 94 200 37225
89 Indonesia id Indonesia -0.789 113.921 63172 China I 295433 28567 5346 9476 1875 63172 10465 16522 10465 1979 1979 6074 7185 3517 27907 1979 19681 1979 19681 19681 27351 10552
90 Lao People's Democratic Republic la Lao People's Democratic Republic 19.856 102.495 11447 Viet Nam E 21801 1143 3045 17 1201 3014 282 1652 11447
91 Malaysia my Malaysia 4.210 101.976 1051227 Indonesia E 2469173 81637 110133 492 5215 352005 5975 13876 10185 130320 1051227 569 16156 247768 201345 2103 26377 21345 3365 78092 950 6516 8137 9676 85709
92 Myanmar mm Myanmar 21.914 95.956 47742 China E 103117 3260 9780 1648 47742 37004 3683
93 Philippines ph Philippines 12.880 121.774 36171 China E 213150 14071 42215 1228 118 465 76 14 150 136 64 4018 507 112 160 536 35 163 82 21 40 5600 131 95 36171 258 127 533 40 10 17 5789 33 445 17 462 162 1 8 113 1212 3808 34 154 1014 34 21 246 55 10705 3325 590 72 435 619 1742 13834 179 55 172 135 3 49 798 14 147 3 6 424 70 487 387 193 656 411 502 34 17 61 24 112 111 61 53 122 6948 35 67 738 825 818 35 1313 175 28 127 609 1040 63 342 143 572 885 435 4309 35779 14 8 416 7 10
94 Singapore sg Singapore 1.352 103.820 1044994 Malaysia E 2323252 37659 225474 9267 74074 4256 380766 55948 20157 138177 152681 1044994 3604 118765 14176 9817 17644 15793
95 Thailand th Thailand 15.870 100.993 1892480 Myanmar E 3721735 387 593 1 1215 1084 750109 624 91611 15 0 12 645 1 0 1179 1991 7938 645 9 79 536 6747 926427 2 1191 1892480 8624 704 1419 617 2151 1196 607 700 4 2 632 142 1 5912 9 636 827 3 1 0 2531 3529 5966 0 1
96 Timor-Leste tl Timor-Leste -8.874 125.728 5793 Indonesia E 11569 148 1225 555 133 198 1199 110 5793 173 180 246 764 334 75 155 72 209
97 Viet Nam 11278 Libya I 68290 1419 3470 102 441 1053 115 205 290 1465 728 148 724 121 185 2485 132 8639 1136 127 228 185 1673 7671 112 669 4284 11278 9783 1899 696 251 207 133 292 154 154 466 386 109 512 300 1627 2236
98 Southern Asia 4634188 Afghanistan 15001688 171802 562515 4634188 0 33 0 0 0 0 21264 0 2469 0 1197 32 11960 0 29603 3464918 0 0 0 0 0 0 86593 0 0 0 14643 0 25861 0 0 0 19279 0 1803 0 0 0 0 0 0 0 207383 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 65 0 0 0 0 44 0 0 0 0 0 0 0 175 0 1688 0 0 0 0 0 2635 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2617187 155780 1797 82510 0 0 0 372 0 14575 0 2246 2425 0 6193 0 86526 0 14 0 0 0 0 0 0 0 0 242189 203 0 0 0 0 0 302 0 0 0 0 0 0 0 0 0 342299 0 0 592156 21 0 51 0 0 659 0 0 14054 0 1218740 0 0 0 0 0 1301 0 159 0 0 37 0 0 0 1387 0 0 0 0 0 0 0 0 0 4560 0 0 0 0 13879 0 0 0 0 499 0 0 0 167189 2 0 0 0 280 182 0 24658 10545 0 0 0 0 0 0 0 2546 4881 0 0 727 0 12209 38395 0 48292 0 0 1232 0 0 27587 0 0 0 692 0
99 Afghanistan af Afghanistan 33.939 67.710 49319 Pakistan I 105090 7470 22411 49319 24658 1232
100 Bangladesh bd Bangladesh 23.685 90.356 229245 Malaysia I 1396514 70389 174039 21264 29603 14643 19279 174487 33795 154945 13509 86526 229245 197625 38337 14047 9406 10353 32852 45158 27012
101 Bhutan bt Bhutan 27.514 90.434 48076 India E 50862 81 42 28 13 56 41 973 41 32 28 48076 13 137 12 37 769 21 25 24 21 37 19 37 24 25 66 38 146
102 India in India 20.594 78.963 3230025 Bangladesh E 5338486 17345 86727 8237 677 3230025 6770 25861 1673 7240 175 1163 2187 835 1737 507 730 2246 2425 6193 12672 203 302 51529 553050 659 1126796 159 1373 4560 4308 158083 108 727 12209 4956 2772 575 692
103 Iran ir Iran 32.428 53.688 2299676 Afghanistan E 2649516 43575 174303 2299676 2469 11960 81922 28292 2438 4881
104 Maldives mv Maldives 1.977 73.536 47951 Bangladesh I 84230 131 4708 92 19 47951 89 44 103 251 19801 332 124 14 87 26 149 1280 80 8451 25 105 126 171 71
105 Nepal np Nepal 28.395 84.124 810172 India E 971247 8488 33098 772 79823 24394 810172 13882 618
106 Pakistan pk Pakistan 30.375 69.345 2326275 Afghanistan I 4080766 19699 59094 2326275 33 186114 1395854 60 81 93057 499
107 Sri Lanka lk Sri Lanka 7.873 80.772 309489 India I 324977 4624 8093 0 400 289 24 390 169 309489 0 27 75 173 51 7 278 14 66 0 2 231 52 0 378 145
108 Western Asia 6859500 India 33144331 762658 1106006 47282 5242 47779 0 12 12 0 0 40350 8540 5 11400 26897 264200 11 15021 3162375 4 49701 19427 2 18 11 3 30 3641 31 9760 112 41 736366 2 9 11 91 12444 0 0 2 27 18499 2 3575 16424 121 2 3053 14 5 0 88 3 451 113 13 15503 2333 20942 840 7178 12 12 33 11 2892882 23 17 67909 1645 133864 0 0 7 3565 84811 0 1 8 22 79386 438205 335 10 120448 0 2 72 2 29 16 1 8 7 0 15 14727 105 6859500 924786 98463 1407420 1757 0 69493 10362 51 3154 465141 54672 361 0 232382 10368 16 6531 114231 13 24 23554 1 11065 85 13 21 693 17 19 111 1 0 240 25 0 2960 0 8 429 54865 0 201777 25 73 11 1 30298 44118 2 595 17 24 25440 0 8 5536 10243 2922284 0 48 4 23 2604 1804216 74322 417 19 11920 1454 22353 8 144004 458100 24 0 0 8 0 0 24 1 0 47549 122 112734 13 20 340 0 647 240 2 267555 18263 63334 4162 352670 3127747 511581 30 3 9751 19894 350171 7854 39329 46767 10 5 0 0 25 46231 214556 8634 0 2 54 217364 70466 183544 503 174886 8 6559 58555 4 542 328 23 0 810841 331 377
109 Armenia am Armenia 40.069 45.038 221147 Azerbaijan E 317001 1533 1912 221147 593 16335 37277 611 1653 8929 727 1045 16227 2983 1809 759 2397 1064
110 Azerbaijan az Azerbaijan 40.143 47.577 175048 Russia E 323843 3465 10756 3729 15582 138 427 2785 900 184 5122 2853 137 20272 3240 1415 4151 139 5033 381 4167 756 175048 3456 1648 1569 41933 14386 171
111 Bahrain bh Bahrain 26.067 50.558 262855 India I 729357 6822 28955 680 100444 445 65607 1605 1129 919 262855 29553 13040 5603 2298 811 722 303 592 87892 43971 88 668 1075 1759 9804 4838 14281 5614 930 490 4079 8371 3119 1431 18564
112 Cyprus cy Cyprus 35.126 33.430 42854 United Kingdom E 207313 1325 440 11 327 42 0 98 1383 3508 417 42 0 126 766 399 308 0 11 13 81 11 70 5 7247 5 0 67 1771 17 56 1884 148 5 98 42 794 39 805 199 5 0 13 11 6105 13 5 34 95 5 582 1079 0 17994 3058 98 5 27912 0 0 5 5 406 39 3236 204 1417 370 914 450 567 17 98 520 280 98 274 28 5 194 3242 269 109 13 11 11 52 39 0 13 75 75 13 52 5 67 567 109 13 11 360 235 75 612 23 11 39 8484 833 75 5 13 11 1107 6367 15309 0 0 274 11 2982 11 5 39 160 17 13 5847 335 184 11627 427 277 5 1074 445 3835 11 308 23 17 42 720 13 23 3857 179 42854 171 3743 5 86 75 75 17 160 360
113 Georgia ge Georgia 42.315 43.357 104549 Russia E 189893 2070 2051 2227 4377 9306 256 1663 537 1704 12107 1934 846 2478 3007 219 2490 451 104549 2064 983 937 25044 8593
114 Iraq iq Iraq 33.223 43.679 15611 Iran E 95780 515 20271 251 11544 177 186 15611 8308 323 1223 161 470 547 218 540 212 375 14954 3048 4981 251 9776 230 1608
115 Israel il Israel 31.046 34.852 165963 Morocco E 2046873 591450 24829 2584 46477 40031 3324 5152 13764 23524 6098 9089 16924 8275 3445 611 2811 1950 21469 81880 314 42578 9479 24068 3139 12713 19297 53236 68976 5316 13870 2563 4000 6341 17574 3937 2647 165963 5200 2484 60321 11102 105488 116632 11926 1924 700 3920 9649 1919 23954 28449 2341 137472 22250 80463 6488 22705 380 31408
116 Jordan jo Jordan 30.585 36.238 2114224 Palestinian Territories E 2925780 55 9 300 12 23 218 101 11 370 10122 2 63 2 2 4 53 92 22 44 2 284 23 8 8069 34 2 22 12 5 1 2 22 8 115 21 73 6 44 7 1 3 276950 2 65 6 66 9 344 3 1 2 624 24 54 2 2 4 5 1 2 5 511 3 5147 9073 83 401130 46 1368 269 1 90 18 5 655 8 9 1 1601 3 848 1 4 3 1 5 247 14 7 59 1 9 6 15 521 2 21 2 158 174 56 2 9 23 38 554 2835 4 2 2 3347 71 9 1 195 83 32 236 520 1 4385 11 51 1 2 6 20 6 66 51 241 266 10873 2114224 1957 3 78 174 57847 9 90 76 2 1 226 893 2 3 345 182 704 1 2280 9 27 12 2074 2 1
117 Kuwait kw Kuwait 29.312 47.482 730558 India I 2028053 18962 96048 1889 919 279169 1232 182342 4458 3139 2551 730558 82139 36242 6390 2257 2006 843 1643 244281 122214 243 1856 2990 4888 27251 13448 39693 15605 2582 1361 11339 23268 8672 3977 51598
118 Lebanon lb Lebanon 33.855 35.862 549341 Palestinian Territories I 849721 489 1497 137 3747 2987 102507 127 231 189 1905 3358 148470 506 593 242 314 193 205 1049 1239 193 1623 89 4025 549341 725 21411 330 127 261 844 767
119 Palestinian Territories ps Palestinian Territories 31.952 35.233 63142 Israel E 256517 2015 20874 8589 18524 63142 55929 17179 3324 9371 10151 21864 4691 602 10931 7858 1473
120 Oman om Oman 21.513 55.923 644704 India E 1112032 11390 33722 538 148314 41365 1583 644704 35027 5759 10249 401 757 117208 21669 233 1004 1042 14091 8466 8897 5613
121 Qatar qa Qatar 25.355 51.184 576776 India I 1600955 14971 63535 1491 725 220403 973 143960 3519 2478 2014 576776 64849 28613 12296 5045 1782 1583 666 1297 192860 96487 1466 2359 3859 21516 10617 31337 12320 2039 1074 8952 18370 6846 3140 40737
122 Saudi Arabia sa Saudi Arabia 23.886 45.079 1761857 India E 9060433 13342 79877 16883 1309004 11007 1298388 39834 28048 1761857 379632 168827 134184 57098 20174 17918 14678 1319607 1028802 26708 28883 147032 120161 234564 139437 23077 12163 101310 31361 35535 461042
123 Syria sy Syria 34.792 38.558 759225 Iraq I 1394227 17169 370543 1791 759225 2538 62 242399 500
124 Turkey tr Turkey 38.964 35.243 712013 Bulgaria E 1864889 627 2003 14270 4906 960 12 12 209 1178 5 4350 21227 24859 11 33 489 4 295 12958 2 5 11 1 13 3507 20 509 112 14 712013 4 11 24 2114 2 10 8 2 66 2190 87 72 2 82 1 331 63 13 15388 1518 47 29 4985 11 17 1141 8 17 168 87 2 2476 23658 1 5 21 9512 405056 213 5 87690 72 25 11 8 5 771 63 772 267 19187 13163 797 4027 4210 33 2966 1330 7398 258 423 2595 2 75 1676 13 21 4549 386 69 1 5 394 17 5 65 1 20 11 229 8 284 54850 716 10 4 1 16 32316 2 430 2 4 433 8 5263 38 1685 21 2 12 79 864 5057 333 13 49 760 3455 8 30706 29404 24 8 24 6622 100 109701 1 13 295 467 217 2 37 439 69 1788 57 1095 247 25 7899 15355 7939 395 218 46668 8 4 8 753 3013 2 28 6189 38 28008 331 20089 8 66 11712 4 60 48 23 102 169 16
125 United Arab Emirates ae United Arab Emirates 23.424 53.848 2852207 India I 7826981 74030 314185 7377 3584 1089917 4811 711894 17404 12256 9958 2852207 320684 141490 60802 24948 8815 7828 3292 6414 953708 477139 948 7247 11669 19082 106394 52503 154968 60926 10085 5315 44268 33856 15526 201451
126 Yemen ye Yemen 15.553 48.516 219888 Somalia E 314683 2483 34508 11086 842 4686 10327 219888 2650 3740 21518 2933 22
127 EUROPE 6332848 Russia 72449908 831601 626544 273743 1143235 1561849 52 7322 210526 134 321 412908 637412 3637 204392 373760 884278 6788 7160 382762 20650 1300150 416209 226 26153 318 1565 215536 1314175 1139 622420 116 6027 535950 23622 12609 70305 141065 234529 111176 7294 127 17217 8643 24262 152694 939630 92258 2145 515876 36232 104302 7 9223 125940 588483 178581 65582 86195 368964 18439 143248 163074 7124 13291 90182 569733 243709 26044 24890 76813 154756 117108 13282 9 6596 252836 1189753 8 64 21212 44215 609027 2242846 203440 13531 397190 16412 8618 44 6 16923 59577 40113 28876 78236 182 41273 344476 28256 1154953 185300 405648 435506 496244 76 86170 1652643 150659 131738 35771 3571109 176073 45 22026 666214 45416 276467 202720 505 11567 72745 3651 474113 51497 123915 17967 78615 269 94715 34473 30 10 29013 108852 18 106406 12 51083 35629 202389 5196 2512568 84698 20850 1658 34 63957 542622 25 72610 23294 8542 352704 0 78 129172 6346 788657 25 7748 664 93460 355455 458440 2742043 1343051 112 870 122936 744773 11 2870833 6332848 14076 80 111 12928 24 6434 219 2459 19059 49794 265151 1018431 2242 30379 53880 16836 300070 128708 100 235736 290692 10498 741249 369063 16143 13851 215514 2568 240423 491827 154619 506517 263121 367375 1833 43723 1 231 25012 570860 2610061 218319 16 607 76327 4369798 14878 1409108 41786 709694 44 97521 1410928 808 261341 427287 43 86 23605 40263 125588
128 Eastern Europe 4469724 Russia 19678250 283034 220506 7275 2883 3264 43 31 864 96 42 1195 575754 5 3479 21928 852971 38 76 1444 30 1120215 10903 19 212 11 47 304 7441 142 1755 94 6 36409 462 162 266 686 8238 63 0 9 114 306 9 480 78731 82 1 788 105 841 3 157 214 8328 3751 16 1919 102079 12206 211 2322 18 16 150 522 3236 47 104 49 72247 644 1 1 16 6154 43283 4 6 48 55 518857 278821 639 13 19116 15 40 1 2 72 398 182 67 31 17 65 42826 943 9125 742 6255 4764 11385 16 7965 49479 80 5058 2770 2813460 678 18 704 609732 207 123590 4335 16 68 1324 28 171296 531 179 55 2089 52 160 181 7 9 34 156 12 1318 5 90 28316 550 2 1960 195 739 159 11 446 9921 2 622 141 54 3166 0 49 4078 76 1795 2 156 12 99 876 1000 66289 2040 3 139 6758 512264 1 256256 4469724 79 7 9 4 1 5 12 54 18 895 272 35974 35 83 200 2 101178 1547 21 552 1448 383 25111 834 877 317 26 25 4867 5456 14668 491482 1838 6240 2 57 1 9 48 1771 23837 210885 5 585 218 3625705 911 60894 382 40101 11 338 1371131 12 521 84406 0 46 1344 586 279
129 Belarus by Belarus 53.710 27.953 686316 Russia E 1085396 269 5762 13571 147 189 3090 2011 8558 104 327 369 70362 5263 9989 16562 160 455 7653 686316 324 5712 5497 227042 440 14874 350
130 Bulgaria bg Bulgaria 42.734 25.486 19733 Russia E 84101 1317 434 314 1195 406 1 6 41 5 124 1551 5 149 214 2270 4 9 663 4 663 432 2 34 1 31 23 113 30 96 92 1 13 17 15 9 255 7 2 5 22 906 25 10 5 5 89 272 257 974 39 16 66 3 1 22 14 139 7 3 63 56 2 58 592 12 11 306 2195 11 9 5196 3 6 11 5 4 5 2 355 162 159 26 278 701 11 355 1141 6 122 172 1022 13 5 107 91 1 132 651 5 207 3 113 9 2 2 2 1 37 1 3 1 27 4 62 29 81 28 3 2 5 314 0 23 31 1 78 101 2 43 6 3 2 22 38 1261 105 9 58 1994 6371 19733 2 6 4 35 10 2430 1 7 305 38 3 140 21 1646 10 0 18 1 3 128 172 1317 126 14 2558 1 2 83 4170 278 3 16 5 6193 64 3206 15 1246 18 720 1 28 658 0 0 49 12 31
131 Czech Republic cz Czech Republic 49.817 15.473 127239 Ukraine E 432776 527 308 657 15 199 5 99 2234 511 2992 714 15 120 1 4566 482 3 45 3 1 66 2230 74 353 7113 15 5 22 84 861 10 3 8 96 5605 24 177 2 51 37 68 2481 316 83 15 125 279 5 1 30 79 558 14 3 3 94 109 2 233 2335 1 10 908 14191 133 893 5 21 75 17 6 1 14 729 31 1200 166 369 442 550 815 2668 5 1557 220 4432 50 4 19 607 21 198 304 1 13 184 5 450 13 30 19 396 2 30 17 1 4 26 316 2 5707 118 221 3 113 24 3 145 2502 131 13 3 578 144 502 1 27 2 31 179 316 18663 166 28 1362 9082 4636 32946 5 5 2 1 2 1 2 68 57 2051 2 18 28 73437 278 1 31 261 39 651 102 137 33 1 2 574 521 578 146 692 1990 2 14 3 5 623 1428 48 3 20 127239 6 4456 19 6214 16 1868 1 80 61744 15 214 41 18
132 Hungary hu Hungary 47.162 19.503 232793 Romania E 472798 8402 1558 847 206 745 86 354 228 1022 8794 165 8 16 74 4 252 1758 2 28 2 63 420 6 550 2276 80 218 2264 9 2 172 12010 215 88 36 25 2539 664 300 1733 29 395 38 120 842 14 11 138 143 759 4160 5 12 228 33896 134 1438 5 19 45 10 4 12 141 1202 234 2211 900 874 1827 4153 31 1463 430 576 95 190 143 49 153 374 6 37 347 8 157 149 36 126 23 39 4 56 459 5 1373 42 204 23 10 9 61 2934 192 24 15 1272 1262 17 251 28 2 22 237 271 4381 356 37 1322 239 232793 4886 18 4 4 351 26 26814 32 90 24025 448 433 366 102 1304 57 114 84 1661 2407 1347 19 775 156 10 15 206 2312 35 31632 196 5829 63 7924 74 126 208 3735 296 19 42
133 Poland pl Poland 51.919 19.145 221307 Ukraine E 663755 5523 1841 152 135 625 62 4 293 2256 974 4061 285 0 9 107 11 81363 5593 1 4 0 52 3727 280 1854 1 8 28 40 3163 9 64 1262 0 133 17 114 39 5 843 242 7 223 4836 0 16 957 0 22 49 485 1 26 214 47 10 269 27991 5 10 7 350 81779 39 3321 6 6 0 7 61 28 0 7 1440 528 919 122 248 456 8136 372 10647 3 547 147 4934 66 206 134 15 1662 411 0 0 257 0 54057 248 12 0 44 33 15 0 0 4 227 26 345 64 341 29 6 6 60 2776 0 114 6 4 408 0 1638 3 229 36 0 3 120 209 147 0 27 127 595 2659 40879 6 0 0 0 188 95 1109 10 10 16 1389 164 15 408 66 5166 93 55 0 0 1401 1088 631 63 105 284 14 0 3 439 937 58 68 221307 134 37020 74 14651 101 532 0 78 2992 0 0 123 45 111
134 Moldova md Moldova 47.412 28.370 221965 Russia E 391508 2298 2233 103 3103 6089 34291 124 361 1850 1210 490 4571 2864 160 18312 2628 4796 5946 129 8374 1119 221965 2677 1108 1365 51908 133 437 10696 168
135 Romania ro Romania 45.943 24.967 49785 Moldova E 198839 5739 1914 9 755 17 6 1 7 11 14 72 635 9 13 1 1588 2 9 2 139 2 8 18271 4 5 572 1 2 1 7 3604 8 4 3 1482 5 291 583 3 111 3 3 74 2 5 3 135 3469 4 3 2 3597 4 6065 1 3 4 21 5 2 6 7610 11 28 15 1155 1270 953 8 572 27462 6 284 964 11 2 2 50 6 1597 1 27 2 8 24 1 1 1 3 1 8 1 17 3 6 1 14 1 1 466 49 9 51 30 21 1 11 8 490 978 10 15 49785 7280 1 2 17 4 2069 1 8 5 248 88 6 17 10 14506 54 8 10 191 163 7479 2 3 538 12 19 3811 1 2 11903 102 3846 2985 8 16 41 8 3
136 Russia ru Russia 55.751 37.618 2939083 Ukraine E 11048064 4934 228 754 43 8 494 48 1 244 510640 0 526 2859 743111 24 12 458 9 740148 458 8 92 5 6 83 499 28 419 2 5 5656 430 127 111 324 541 45 4 89 148 9 103 54398 58 1 200 86 563 3 32 107 311 2156 9 695 10903 10289 15 225 10 9 22 234 1028 7 101 6 56896 264 0 1 2 2141 2486 4 0 16 11 436005 137542 307 4 1891 3 21 1 2 12 197 127 18 23 14 22 16310 44 5522 158 1949 955 170 5 3533 1838 17 992 791 2479430 437 3 84 572678 117 86567 939 7 9 262 4 68834 35 82 29 1508 45 72 52 5 9 21 62 12 197 1 45 20476 256 2 1067 108 607 116 5 170 532 1 85 59 30 771 49 678 51 706 1 25 2 36 268 143 28286 226 3 26 3604 285023 1 3788 45 6 0 2 1 3 46 15 212 71 17 12 49 2 1774 339 19 57 233 138 1350 569 550 113 14 19 462 563 3162 451778 210 248 0 18 0 4 9 325 9914 179802 2 565 80 2939083 344 1688 210 4445 11 116 1110593 9 96 13241 0 31 628 458 71
137 Slovakia sk Slovakia 48.669 19.699 83050 Czech Republic E 149635 120 56 60 1 16 27 70 104 225 2373 16 2 15 9 1 150 592 1 9 0 15 313 2 49 1115 3 5 6 6 435 3 2 142 16 585 30 11 5 4 583 96 70 83050 13 7 100 5 13 23 110 2 28 22 1 58 2250 1 1 54 2757 11 208 3 2 4 5 2 2 3 2 15895 26 95 21 45 40 691 3 122 1570 12 93 46 143 15 4 48 16 4 49 59 2 3 40 6 72 53 16 6 12 13 2 6 75 4 5 58 40 32 3 3 1 5 397 1 28 8 1 50 204 3 34 13 3 4 39 15 4379 62 0 2 270 67 4890 2213 2 1 1 1 1 24 9 1501 5 2 5 192 1 7 23 7 488 3 22 6 1 126 542 154 5 39 466 1 4 76 157 12 1 8 9398 65 4276 1 2199 13 40 1 15 1477 26 11 3
138 Ukraine ua Ukraine 48.379 31.166 3453506 Russia E 5151378 259755 212526 49862 86741 258781 10509 67875 234238 28172 20038 25097 157826 3453506 30954 23824 231674
139 Northern Europe 987054 Poland 12429626 110020 108485 111608 20294 28069 1 19 15386 0 21 22484 5165 40 128690 26782 8023 6397 6428 252845 20296 109008 41045 43 237 144 951 5530 98872 543 77764 9 5297 79115 236 4597 1484 16376 111204 922 7 72 123 137 24250 43675 223257 91220 49 48188 29 12960 0 951 2072 21064 4626 61 68255 52536 853 32085 98845 330 5129 1761 9057 40312 3235 65 44014 66218 46143 13271 6 6200 195663 176399 1 7 57 17316 5810 455636 90379 13390 57413 16358 8439 1 0 1863 1030 236 21501 370 1 706 84827 22293 817721 17327 178826 261637 424008 0 27323 165083 146504 51878 12842 23462 153949 6 18166 2923 753 122336 58732 174 2537 23448 61 236495 1320 719 16724 63322 45 256 29848 2 1 164 51287 0 17168 2 91 2851 2218 5177 45563 7919 17236 455 2 50214 92746 8 60134 1259 250 211258 0 0 84616 5506 529503 3 482 78 517 10656 184145 987054 104791 14 335 50168 8083 0 169164 528919 1973 15 7 8102 1 6273 81 12 11 40555 1253 45929 137 17256 43974 15 80234 1958 19 183168 228468 3458 113427 160974 13204 8046 148 153 148123 27738 44975 1756 118487 11706 9 984 0 68 22945 16508 181596 1595 2 2 70692 114450 11547 438147 35564 305470 3 2990 8379 7 11388 77574 0 3 18246 36575 119600
140 Channel Islands 73030 United Kingdom E 82592 1209 478 1124 2223 4528 73030
141 Denmark dk Denmark 56.264 9.502 35316 Germany E 556825 11924 312 928 1 155 4 1191 666 5 2935 1858 301 18 90 1056 33 691 1996 6 47 0 597 450 18221 66 3242 6 5457 99 538 231 693 3699 28 10 16 1568 11342 512 0 3180 13 734 0 169 435 796 470 179 1123 376 963 21 14 160 581 1659 83 319 1459 2077 11985 22 3717 6922 0 0 5 632 215 35316 1844 2097 15986 10 0 235 112 59 100 154 126 3861 8199 9343 1122 13727 21974 1597 1663 6194 170 1869 1183 205 1559 1 1371 48 60 4321 12704 48 170 239 20 8666 489 58 87 833 9 50 99 0 0 26 142 1125 17 59 154 5477 203 1746 62 1993 6950 811 188 16 1369 19767 28 12686 80 8 70 1076 10585 30931 1517 0 88 8924 413 0 13615 5607 383 9 8 19 2 0 260 152 3524 19 343 756 1312 328 3 10389 1823 380 5732 8032 0 314 29 48 21988 2615 4203 27 12045 2908 144 17 164 900 32829 15 1441 6682 362 18047 1036 12029 234 272 4 687 10131 164 590 414
142 Estonia ee Estonia 58.595 25.014 159036 Russia E 209984 500 1209 12419 51 105 43 1152 73 1323 816 65 45 3205 475 3609 1753 48 417 731 159036 158 299 312 21014 54 161 911
143 Faroe Islands fo Faroe Islands 61.893 -6.912 672 Iceland E 3641 3 3 8 39 3 8 3 66 31 8 26 3 3 26 3 8 94 3 11 11 39 34 23 46 31 3 8 672 11 11 8 3 11 11 8 3 3 11 3 55 8 8 19 3 23 26 11 15 8 8 384 19 11 157 298 15 8 195 97 3 152 19 8 2 8 11 1 109 11 3 211 11 3 3 23 3 15 252 8 97 21
144 Finland fi Finland 61.924 25.748 68434 Russia E 293167 1721 431 3295 236 816 2 436 0 1 359 91 1 1144 622 116 9 18 1753 13 282 564 2 13 2 5 152 691 13 1233 0 1492 10 48 271 662 1720 10 0 2 8 436 8874 1027 3 113 63 132 206 419 153 714 2 1282 1027 8 6 152 189 985 59 13 81 34013 1878 0 9 2345 0 10 561 48 6973 1139 0 903 0 1 77 67 7 23 13 1 51 2045 180 4934 418 5117 9074 549 0 832 2192 70 1377 281 213 1128 0 127 41 30 1422 574 0 120 183 0 825 91 16 20 443 1 6 36 0 15 41 0 683 0 3 56 3 0 2001 66 1178 81 0 1592 1494 0 228 102 22 1844 1801 7 1774 0 25 9 17 490 2434 3426 442 16 507 116 2182 68434 305 0 1 5 0 3 3 0 0 288 147 107 8 127 181 153 33 5 10093 771 2050 878 39 2 14 36117 1080 539 43 8542 131 0 63 1 30 661 6227 22 0 2 163 1272 109 5570 513 4896 0 102 108 1 167 5558 0 45 174 77
145 Iceland is Iceland 64.963 -19.021 9357 Poland E 34377 9 35 27 1 33 30 5 1 95 135 12 7 1 4 2 40 97 1 1 3 15 147 121 0 132 1 2 8 250 35 0 72 517 0 161 0 4 2 157 38 4 159 0 2 3066 2 1 28 30 29 12 6 6 150 63 332 1 180 463 0 9 20 1592 47 0 24 73 31 17 1 19 10 28 166 286 122 53 49 88 32 224 16 86 12 18 67 4 1 1 683 30 2 2 1454 122 1 2 31 1 3 5 77 1 22 6 153 17 1 34 0 95 287 52 6 1 63 981 4 30 4 1 5 72 1479 9357 454 0 2 35 12 223 350 2 8 20 336 15 14 168 33 1 1 78 314 163 6 0 0 1876 143 19 2 1122 29 3 1 4 22 65 1 37 228 2 1184 21 1855 7 6 34 549 0 8 9
146 Ireland ie Ireland 53.413 -8.244 253605 United Kingdom E 735535 485 757 1241 4 1009 0 6 699 139 12 5520 777 154 47 186 2636 36 1211 1614 10 60 118 32 100 1114 245 8473 0 25 1952 17 124 41 916 4495 18 1 69 11 24 294 10459 309 2 2113 26 318 905 184 8 283 5948 339 559 964 3 5 37 100 1298 53 1 163 2693 525 9 6 41 958 10940 1 11 78 645 14253 1265 61 623 3 24 255 172 8 61 14 30 8040 62 16397 271 912 1584 431 7780 237 967 287 583 968 1 511 85 56 21751 263 69 247 713 9 37823 152 29 286 3474 8 41 367 1 36 2640 819 1 14 573 26 6 661 96 238 66 498 4935 8 1894 33 127 18540 507 155 7517 32 24 52 314 13099 124566 2445 73 525 3161 19566 5547 159 11 2 14 1 14 29 1 1819 44 704 29 404 442 2 11534 207 3 1360 7546 797 7658 566 137 657 41 48 1839 1026 282 45 1764 580 5 308 13 225 236 1164 14 2 426 3843 452 253605 266 24857 131 227 1 443 1620 3 62 646 2597
147 Isle of Man im Isle of Man 54.236 -4.548 39344 United Kingdom E 44688 1231 635 321 179 228 1908 82 521 39344 239
148 Latvia lv Latvia 56.880 24.603 146628 Russia E 282887 37 8 20 2 2 0 1 21 821 1 146 140 2214 2 6 1 49235 116 1 5 34 513 1 1 7 134 2 2 5 211 8 2 2 3 6 53 26 220 11 260 2 3 37 1 3180 247 339 1 1472 2912 35 2 2 225 36 91 3 39 14 790 111 311 1 16 5 6452 4 3 896 41 6 1 18187 12 1 1 3 2 10 2 37 119 13 1 13 130 14 0 18 199 36 1 1 2 7 7 1120 57 1 38 1875 128 146628 2 4 6 2 4 62 11 7 12 3 227 31 3 2 424 93 18 610 15 1 3 3 98 650 3 36106 7 1423 2 677 3 2107 32 10 1 4
149 Lithuania lt Lithuania 55.169 23.881 62143 Russia E 147781 4922 1641 17 10 11 62 522 30 54 958 2 35708 81 4 54 88 71 1 252 17 3 4 1 5 14 12 60 4 213 0 3 19 1 1 885 2 89 253 693 1906 3 30 1 86 34 55 0 21 4 934 124 213 27 5 5375 1 4 430 6440 115 1 1 0 15 1 1 1 4 1 16 1 45 3 1 3 1 80 6 0 18 166 34 2 3 9 4 2425 33 1 22 738 27 62143 1 3 2 0 1 0 14 5 3 13 461 9 1 1 152 38 13 371 10 10 1 6 106 279 1 13322 26 2187 1 1107 17 1181 10 46 0 1 1
150 Norway no Norway 60.472 8.469 76184 Poland E 694508 179 59 12481 573 1303 1 7 473 3 1036 272 20 2199 1622 514 18 29 928 22 889 1621 12 29 11 294 529 14717 126 4648 5 36 3578 29 1079 397 700 3225 449 6 3 6 28 7278 11430 1267 49 5813 5 198 284 338 3265 912 53 154 1847 44 2072 26235 51 16 738 715 934 190 2 9258 4123 6960 945 45 7478 6104 1 6 7 1219 270 30819 1815 9 1315 294 3 1 462 227 32 99 40 106 3138 7809 10280 1583 16198 24763 1011 851 3161 179 1449 409 816 1825 395 175 106 7565 2006 13 1045 441 30 25623 144 507 110 749 10 44 80 1 32 202 1101 18 119 384 5825 174 3175 94 1196 8850 653 186 48 1447 49 20324 57 7 155 1406 18205 76184 1764 14 53 8156 456 0 7281 17247 644 4 3 14 25 5 5 493 228 13752 14 544 735 13 3170 274 3 23278 1438 903 4124 10120 3559 745 42 16 53082 2270 1796 109 17151 2553 117 5 383 1022 12165 77 985 3520 343 20322 994 18669 3 236 420 910 14995 0 311 576 281
151 Sweden se Sweden 60.128 18.644 167185 Finland E 1519510 89169 939 21919 1652 2831 2 744 6 3023 2149 3625 5905 2545 31 81 6852 120 2481 2181 12 86 10 23 4277 57741 93 6647 4 8 7506 80 2807 541 1340 3354 377 92 61 29000 28596 610 11356 6 765 399 835 6552 2533 599 1495 77 2632 45104 245 44 644 2239 5062 2837 43 14013 10350 15144 61 167185 8554 24 4371 1124 49717 2318 8 13472 45 801 435 129 126 139 0 364 15995 5301 19808 2308 66978 130449 2247 2482 8810 326 3256 3346 1577 2991 4 1702 772 500 5891 25244 44 941 1791 1 8993 287 98 80 1451 17 112 145 1 54 188 2245 1 37 1810 1645 8339 336 1498 115 2 795 9591 1092 744 36 3637 43752 41 10958 2 281 29 194 7271 11203 76848 3222 101 10773 581 22526 17670 477 1 32 15 25 4 11 2169 660 27348 67 768 699 1340 1067 4 44856 2249 1373 7864 7024 4313 1130 33 27 0 3316 28067 250 36274 5484 4 345 30 307 4603 45998 225 0 3413 5921 938 23129 1615 18682 2260 3147 1 1015 15994 1034 461 509
152 United Kingdom gb United Kingdom 55.378 -3.436 756471 India E 7824131 11589 104302 61438 16711 20889 12534 16055 112636 15666 6267 6021 239608 20069 6052 32767 6236 53246 5222 58366 12042 94000 24022 5018 151445 88522 26623 9032 9078 66845 40959 24575 21933 5043 5197 30289 20172 9354 19455 6021 14623 139259 10445 311286 81917 13312 38911 8356 21073 51198 756471 11489 75773 73726 412658 20786 136187 145505 42823 7311 5018 145403 14049 70654 17755 20069 133116 16137 56318 29101 48044 11039 5171 23080 7025 9400 44031 60414 55294 184314 17059 5222 476144 126972 661482 90314 21180 103421 46160 8028 6205 35511 15052 41143 62462 93181 214009 84989 134140 5146 5197 32378 17146 10035 41353 21826 9032 82941 64223 22527 9308 31108 222201 8069 28671 16629 34119 115708
153 Southern Europe 1874126 Romania 15998197 21678 159407 4333 1072266 85487 7 6237 167046 4 45 356116 19568 93 36633 32599 846 101 54 112286 66 32354 101360 40 2821 3 39 200218 829050 90 379987 0 30 283671 11815 848 1344 16157 45643 72307 10 33 253 284 3 76070 362733 198 2063 399164 27 6302 0 4829 26221 257257 149225 88 12638 21175 265 8906 17414 106 1203 54939 544006 121977 20049 21774 13435 3240 37420 0 0 77 17420 468510 3 36 916 20424 58221 536283 59764 28 27103 19 29 42 3 9364 19873 36018 114 717 147 38276 29187 1886 175432 4744 22252 13117 23730 39 8082 117680 428 16816 6123 8574 5457 2 627 1190 260 7227 13051 48 3166 40195 511 26536 11398 1989 655 727 83 23573 2265 14 0 11294 9671 0 56033 1 26014 260 144800 3 1176030 73347 355 121 2 5302 76453 1 2228 19490 646 89328 0 29 21492 50 173493 18 5504 101 89439 303939 176207 219098 156167 39 83 8484 195505 10 1874126 174347 721 55 4 23 22 38 65 2159 18593 1749 140509 300587 1120 2653 709 23 19578 70582 7 12005 23104 1715 72634 82396 654 1414 55 2157 35235 291086 18356 205 12106 177694 1805 4950 0 26 225 120217 104375 239 0 5 1045 361615 353 498504 1626 111465 29 88561 5473 23 231498 6610 43 6 371 973 2230
154 Albania al Albania 41.153 20.168 34896 Serbia E 96798 4847 968 29077 13203 435 228 347 703 244 5816 466 34896 804 4764
155 Andorra ad Andorra 42.506 1.522 22411 Spain E 45086 1626 542 708 61 200 199 105 4145 339 93 456 480 222 383 11830 22411 46 75 973 86 106
156 Bosnia and Herzegovina ba Bosnia and Herzegovina 43.916 17.679 7506 Croatia I 23197 278 279 12 5 26 123 6 8 5 55 18 7 18 7506 50 3 102 326 40 94 8 69 4 12 2584 15 3 3 38 8 239 105 6005 1991 1153 3 21 39 4 1809 8 58 10 45 2
157 Croatia hr Croatia 45.100 15.200 499059 Bosnia and Herzegovina E 756980 3533 3149 227 1107 2019 306 499059 195 755 195 70 1326 8213 2657 3294 39357 371 130 85 1045 118071 47768 447 741 20677 290 1893
158 Gibraltar gi Gibraltar 36.141 -5.354 4327 United Kingdom E 9662 1173 343 1328 2491 4327
159 Greece gr Greece 39.074 21.824 574840 Albania E 988245 309 574840 453 7 13 0 4 0 570 7779 87 1034 594 134 2 2 16871 0 916 449 4 18 3 0 18 882 0 115 0 55988 4 29 0 252 1278 38 2 32 7 18 3 306 4414 61 393 0 345 0 18 20 461 460 19 11496 1293 4 49 305 0 80 697 116 11026 53 4 180 29 2361 0 22 362 1479 3 36 0 49 37912 11117 1051 26 19 0 42 3 4 18 0 20 7 0 33 933 0 9218 242 3335 7704 317 39 408 3368 2 1164 290 2680 564 0 154 0 167 2748 0 9 245 0 371 717 49 4 53 4 20 9 0 20 53 696 23920 0 534 2 1086 2 22 11 51 3735 96 47 111 3935 29 11 0 24549 0 38 2 85 252 5850 11765 4 39 0 325 6284 10 38597 16282 29 55 0 22 2 2 4 7 38 180 8365 31 205 51 5 295 478 0 13 2923 312 18 1791 299 257 2 1513 2724 58 7500 0 390 3390 2 4 0 7 1358 6487 31 0 120 14174 0 8445 229 1379 29 49 2124 2 232 40 42 2 27 33 65
160 Holy See 0 #N/A I 799 479 320
161 Italy it Italy 41.872 12.567 1008169 Romania E 5721457 4006 449657 24601 89 1837 43 84532 1008 21318 12326 640 94 47 81934 52 26433 49407 24 2372 35 14763 9946 69 113929 30 57794 10585 812 1340 9836 27293 6321 206 256 13084 184911 38873 25 3266 1464 22794 21510 31930 714 9125 179 5451 3818 106 277 39712 92228 103111 10749 117 13221 1375 31547 54 3144 146537 328 1005 8534 230610 42837 20926 22 1964 3146 551 81 693 147 1951 12176 501 120224 2180 13115 3344 3917 4577 380 9460 3445 3418 3245 2 588 1028 254 2920 7047 27 2316 38548 178 5426 5092 1900 176 625 30 1226 1881 5 569 9600 7567 1 2085 236 3917 425188 801 316 85 2 1525 14235 1006 1072 509 48073 1970 43 71508 18 1047 94 2500 113230 129788 128158 7001 78 4206 151313 1008169 81356 661 4 23 36 49 2155 80 941 79102 62564 1081 1343 601 8236 3796 5 11961 6026 1378 30809 80543 321 1136 36 37 7224 207013 5503 183 9300 68714 27 4382 26 187 115588 20840 184 5 891 213303 319 72234 1320 60037 8267 2397 21 51207 4983 318 859 932
162 Malta mt Malta 35.937 14.375 11429 United Kingdom E 34455 1 106 53 1 1 2 19 28 5463 125 2 2 4 18 5 26 130 8 1 171 1 67 507 1 4 2136 1 4 12 364 11 11 1 7 122 1 53 67 2 8 84 4 627 43 26 5 63 57 285 1 32 1063 18 73 2 1 5 2 1 37 5 320 30 23 80 313 21 1572 8 39 32 15 47 22 4 1 30 75 19 8 1061 25 2 5 40 9 4 1 8 1 206 11 4 2 471 23 26 126 43 1 136 1 21 232 136 26 9 46 493 841 1 11 28 1 663 4 8 21 90 45 19 112 12 78 23 32 10 2 8 184 112 251 105 98 23 395 195 1 2 203 18 11429 5 1528 19 5 1 11 14 39
163 Montenegro me Montenegro 42.709 19.374 19775 Albania E 50708 1649 329 19775 9886 4489 148 77 118 238 84 158 11864 273 1620
164 Portugal pt Portugal 39.400 -8.224 161395 Angola E 893847 1129 2524 9 52 240 385 161395 0 1365 105 0 1243 521 68 3 1 1519 7 977 3534 3 33 0 4 221 44 18 138664 5350 19 4 2 76 7516 61492 8 2 5 202 10806 137 2063 667 2 492 20 135 86 1675 69 31 257 77 1877 408 0 17 70 461 434 89 227 2 132 32 0 0 347 93781 0 586 119 1106 27792 199 2 194 0 7 32 4650 29358 6 4 15 413 30 8068 257 211 44 1614 351 2816 27 320 29 900 106 5 2 213 76 2 29 30 210 377 4056 27 473 50 0 118 46 42 9 274 20 81 0 2033 72541 4 19 549 4092 1 47 15 276 343 5 2000 36 3 55 295 492 1007 3 133 20377 23513 5862 20 3 0 18506 14 2148 54 4 55 29 18 96 59 1 11392 2 16366 27 2 15 599 831 16717 27 21 281 283 1776 78 0 5 142 308 19 29 48065 3 18989 71 7188 233 909 24970 55 4 18 1184
165 San Marino sm San Marino 43.936 12.460 4219 Italy I 4857 33 0 73 3 1 10 4 1 27 3 0 5 11 4 4 18 21 2 9 4 5 2 2 22 0 4 0 0 2 1 7 0 1 4219 1 2 2 1 2 3 19 0 1 0 0 2 1 28 1 19 121 48 0 3 9 0 3 0 0 2 0 0 1 5 4 63 4 14
166 Serbia rs Serbia 44.017 21.006 170974 Bosnia and Herzegovina E 532457 5885 6297 266 61 338 3709 116 115 170974 56 1150 196 383 157361 598 56 3333 7922 833 2071 158 566 89 263 80674 361 8 824 161 5015 2184 440 14703 51 555 1095 83 61315 158 1217 201 572 44
167 Slovenia si Slovenia 46.151 14.995 98501 Bosnia and Herzegovina E 233293 8 140 30 2 427 6 6 427 3175 2 5 1 122 319 1 1 12 98501 2 95 949 4 3 2 14 438 2 1 38 1 29 807 38 8 3 1 49475 60 18 387 3 2 45 1 160 9 93 4 21 10 1 34 1252 2 11 16 8547 28 95 1 8 5 2 11 5 390 9 111 33 64 55 50 41 3233 11 68 63 48 25 12 2 3 26 22 3 36 13 39 46 13 1 8 5 7 5 51 1 3 2869 1 16 3 2 2 11 336 22 3 32 26 1 19 4 2 3 47 89 358 41 2 17 314 352 1241 10 14 6 36719 6 7 536 2 11 42 11 458 12 2 9 369 1118 34 1 200 14398 3 3 49 96 4 3 1513 13 577 1 714 7 24 50 6 1 4 11 3 10
168 Spain es Spain 40.464 -3.749 797603 Romania E 6466605 489 143772 1985 60110 5749 3811 268129 10642 5616 10000 11939 3748 46888 397 185203 2041 126834 160832 1202 5975 6013 4453 62031 161019 359178 2176 3323 3264 1633 115078 326 9343 1519 12520 828 14291 451184 4188 9158 21383 1678 3407 13474 216248 19239 10621 240003 15631 4249 7361 12050 6104 36271 9393 1341 37397 2002 5497 1724 17519 2683 97721 5764 2171 1511 1470 3870 3083 801 110 20296 1485 22220 311 10654 47441 745674 3164 52615 893 18353 36885 19099 75281 4379 86795 190004 39372 75641 137264 3794 16983 797603 65593 714 59072 3972 1036 7848 1253 2555 22832 64118 4954 1830 625 483 2680 3723 82956 381025 38009 79899 155034 1525
169 The former Yugoslav Republic of Macedonia 72556 Turkey E 139751 590 884 25400 4 8468 1043 1393 53 1910 42 228 80 38 8968 98 24 211 17411 37 250 72556 63
170 Western Europe 2300253 Turkey 24343835 416869 138146 150527 47792 1445029 1 1035 27230 34 213 33113 36925 3499 35590 292451 22438 252 602 16187 258 38573 262901 124 22883 160 528 9484 378812 364 162914 13 694 136755 11109 7002 67211 107846 69444 37884 7277 13 16727 7916 0 32469 274909 758 32 67736 36071 84199 4 3286 97433 301834 20979 65417 3383 193174 5115 102046 44493 6670 6943 33332 16148 78184 2713 2947 19315 13051 32901 10 2 303 33599 501561 0 15 20191 6420 26139 972106 52658 100 293558 20 110 0 1 5624 38276 3677 7194 77118 17 2226 187636 3134 152675 162487 198315 155988 37121 21 42800 1320401 3647 57986 14036 725613 15989 19 2529 52369 44196 23314 126602 267 5796 7778 3051 39786 38248 121028 533 12477 89 70726 2179 7 0 17521 47738 6 31887 4 24888 4202 54821 14 1289015 3237 2520 923 19 7995 363502 14 9626 2404 7592 48952 0 0 18986 714 83866 2 1606 473 3405 39984 97088 1469602 1080053 56 313 57526 28921 0 571287 1159858 11303 3 91 4799 0 118 61 234 437 6595 123117 635941 950 10387 8997 16796 99080 54621 53 40011 37672 4942 530077 124859 1408 4074 215285 233 52198 167547 76620 13074 130690 171735 17 37732 0 128 1794 432364 2300253 5600 9 15 4372 268028 2067 411563 4214 252658 1 5632 25945 766 17934 258697 0 31 3644 2129 3479
171 Austria at Austria 47.516 14.550 199935 Germany E 1333807 7704 2812 1153 2 305 6 1361 2727 2225 961 20 19 2446 19 1490 2301 37 71 17 22 455 138677 23 4635 5 14061 109 87 856 584 2276 37 26 11 1124 15831 251 15 1403 409 160 191 35755 786 290 49153 2514 626 1268 6 45 2793 591 13309 61 9 93 333 1140 16 1428 8012 22 562 2963 199935 2211 3577 14 1 333 270 61 17 56 88 39743 168 12133 1085 13849 4937 881 2290 26578 186 2654 669 986 878 226 579 111 721 1646 4 245 411 338 812 682 67 34 431 8 89 97 30 102 1351 1 22 1612 19521 1722 60 63 164 1 525 7575 396 186 28 7583 864 28 4302 1 55 53 204 1508 12384 58977 1540 5 23 1590 62801 27681 189 2 13 9 4 1 2 426 299 174437 39 239 256 24283 16005 13 1086 2496 311 3684 877 248 257 18 21 3174 14123 2967 254 5009 19592 195 6 62 3298 165206 125 11 245 7357 157 9843 140 9879 252 674 6 817 2989 85 101 267
172 Belgium be Belgium 50.504 4.470 189367 Italy E 1159801 3170 23810 2038 3125 9987 2088 3243 762 2828 717 1055 1332 510 1500 5818 14641 1409 8161 3098 1040 9611 1469 684 1672 849 660 259 2447 20072 3343 691 1124 2461 654 606 3358 155879 1342 43821 3226 16450 2306 278 3127 7701 1286 3782 1737 4030 1671 189367 5051 34 1798 1027 762 1760 1099 4905 282 636 745 949 1494 91090 1036 148440 748 2550 1503 4254 1058 3460 47894 36777 749 29328 14243 2019 1320 9122 655 3426 627 692 817 50282 4920 2339 1670 3355 2570 1795 4407 43966 2633 27835 12598 1623 1163
173 France fr France 46.228 2.214 1406845 Algeria E 7439086 4682 6583 1406845 1 965 17886 9 59 12731 18766 10 6567 12350 4043 45 159 4912 75 3343 150670 8 20075 113 85 3095 13707 40 56449 48 17332 8595 1835 62289 78561 25309 21920 4 16440 7295 14162 93269 507 17 26778 36024 68317 4 740 88440 9929 4700 34 1013 8955 59 62172 6373 6462 6336 3432 4068 30421 1096 384 628 893 8531 4 154 3765 19451 1875 7457 229738 6584 69 12675 13 2944 29045 3014 4642 73100 577 10377 378 47261 4864 22408 6019 9664 13 9044 361475 510 19966 1419 2540 1719 8 723 709 41914 2743 46378 48 772 2311 27 2573 12674 118397 105 2495 6 69253 483 16380 43599 12370 3 24531 1403 1379 6 911046 1268 463 171 1304 41868 1926 636 5411 5671 4003 108 19849 502 26 1015 11488 14970 106408 629118 51 146 20358 6451 65700 50648 6091 1 4 4670 29 18 216 220 2448 115909 74609 588 1280 2245 9 4379 2550 4 1851 5093 1533 299355 40138 977 1264 23977 21 9894 93682 16478 241 17849 4413 11 23367 95 404 382129 259514 208 7 1 571 15616 771 172806 633 53010 1 2395 1085 728 6231 123638 17 479 340 689
174 Germany de Germany 51.166 10.452 1543787 Turkey E 9845244 304589 87025 97970 31969 13406 7219 10667 9415 203157 15469 4420 30937 22687 1374 1733 158813 44344 66001 1396 543 790 11344 16500 207 5156 74251 12375 12556 734 2830 233064 10312 905 111375 1985 7219 21657 7219 4465 14437 456 8250 9281 8250 15469 123751 349 2611 13406 23719 238220 651 2791 434 564 105188 1381 46406 12375 120657 93844 12375 20625 433127 1269 16500 10312 717753 7219 49500 939 14437 67031 2292 3056 222 29907 16500 628 3652 764 452 7219 20625 93844 762 2595 137157 1621 529 894 22687 7219 39188 306 985 12375 41250 1146754 107250 25781 19594 383626 1007536 741 1027 2252 189750 3420 1263 50532 30937 6115 8250 88688 41250 17531 45376 44344 12375 71157 86626 9281 452 26813 1543787 5156 1475 234094 96938 1042 111375 658 21657 3248 106219 2164 326
175 Liechtenstein li Liechtenstein 47.166 9.555 3684 Switzerland I 12208 135 350 2148 18 308 75 3 59 133 13 24 2 7 71 1377 63 29 1 13 1180 5 14 69 6 21 658 323 19 47 341 16 3684 138 810 48
176 Luxembourg lu Luxembourg 49.815 6.130 85716 Portugal E 229409 318 107 15 42 7 82 876 1 1 32 1 46 17925 8 4 2559 315 796 3 7 1 65 250 1709 1 4 62 1114 28 3 18 439 25 58 821 6 103 2296 122 38 17 27 477 8 1 1180 32752 3 10 12787 10 1651 8 15 1 3 983 349 205 17 246 15 1474 45 18667 1 300 3 4 3 3 443 37 1 6 543 11 28 6 245 3 56 30 1 9029 260 3 34 4041 25 1 13 8 186 21 4 1 3 105 200 2852 85716 53 15 1575 415 27 32 6258 3 3 13 641 439 3 49 2 3620 13 1 1 1865 562 1 184 366 20 1 142 212 6 186 5927 1160 11 10 27 77 4
177 Monaco mc Monaco 43.738 7.425 7798 France E 24299 30 49 2 123 199 861 67 12 1 200 0 14 10 1 11 156 5 69 7798 2 887 259 3 9 14 37 76 36 15 7006 55 0 203 25 5 0 37 335 469 19 47 12 58 618 27 50 26 29 56 40 308 317 973 21 19 112 76 88 1862 429 17 14
178 Netherlands nl Netherlands 52.133 5.291 203483 Turkey E 1964922 756 252 33589 1006 4046 13 322 25 35 2982 782 3489 10422 6796 676 57 121 1240 78 247 52442 16 286 30 348 832 6583 227 15058 13 585 18044 369 2547 714 1983 9629 12120 7273 13 58 98 3277 62639 13916 16 1019 727 1298 230 1286 65383 484 6393 57 5089 3460 102 79 8569 2030 12526 368 49 1585 829 9228 6 2 62 2840 23561 15 89 658 279 126587 14175 31 11551 7 49 683 2633 263 2399 1417 445 10920 450 20141 139260 28079 42011 5054 8 5333 22255 891 5979 921 167 2808 2 1117 57 204 2557 3459 129 2049 917 5 3608 1079 180 285 3521 10 167 326 5 343 363 6 3425 70 503 4 8 173489 658 982 261 1 1561 14 3779 450 301 7002 2749 490 11868 288 135 193 3845 11611 80639 15631 74 7015 93 13606 40344 1163 2 80 56 64 24 158 1714 970 53050 87 4453 3382 16787 3489 102 15 25403 13406 2491 21887 10496 2053 191182 85 4434 6808 7499 41 13450 123 1217 8 539 4479 203483 15 2 1292 887 622 48977 1523 26445 634 165 11 3665 12729 7 459 1000 1461
179 Switzerland ch Switzerland 46.818 8.228 356974 Germany E 2335059 108219 26709 4544 1979 9455 55 6614 113 8729 731 5994 64097 571 129 303 2082 85 1178 15997 63 559 73 3365 56665 74 36153 56 5865 637 574 2561 7147 12182 2098 202 301 7634 18125 11767 31 1213 922 2973 21435 3210 374 14017 494 6765 5916 100 361 10590 4977 6340 732 44 8759 582 5133 70 5483 149737 275 714 682 356974 2733 9112 47 1005 1213 339 135 1821 17 552 17255 407 18791 3600 9218 7425 3594 3777 260746 790 7481 678 2365 3362 9 463 494 1028 1651 6088 86 437 1083 2453 1244 2378 1745 109 2350 65 442 294 2 129 2873 6506 265 683 2755 17229 1248 250 327 17 940 23883 1860 602 197 3451 2409 88 4384 1 451 258 1005 9593 13213 25999 202745 70 3570 1178 14624 18941 1073 5 60 16 15 17 57 980 2309 128392 233 337 1838 12282 3858 21 4861 7521 605 61912 32085 182 499 108 106 10047 3640 163 19686 57907 6 1838 19 336 10984 83199 96 3 783 7255 429 47327 876 37762 1682 731 21 3929 11868 7 457 362 1058
180 LATIN AMERICA AND THE CARIBBEAN 1284001 United States 8548070 39040 123467 376 479 1271 15 103 7117 2073 8463 299660 1056 5569 5385 9366 90 1928 93 220 5539 546 10003 6705 62 176 34 454055 164 38 224752 4231 166 2470 66 33 278 316 45691 1269 2675 144 50 39 134 274254 105059 4524 64 1145371 9 281 16 32387 404 3261 83432 6878 148 4771 1422 285 2682 3 22640 124167 83305 4479 65473 86 39 443 1549 15 81 22 1585 176835 4115 13 49 57 189 75068 322 44 4916 516 8892 11427 14 83957 138 996 49995 352883 4 61187 5200 635 14801 1898 2129 875 1887 3 8856 273274 34159 72529 2212 96 420 87 175 20 1312 602 26362 18 115 466 139 1535 364 135 33 511 19 159 183 4 14928 28 23 2 75326 18 180 57 395 2960 2314 1608 150 71 65 90 39225 39 1222 345994 88 2045 13 10 2338 59 1458 32 26259 24 648665 439476 8408 18104 194809 25346 50 31532 684 1186 6510 15517 781 1061 13286 16490 54 15792 15 71 86 2298 369 1488 36 55 414 1533 607 1581 13 59 15403 48 284723 181 2156 40 37270 21 5359 18508 18181 20 1075 2841 54 71 0 365 21685 268 2428 42 316 9 135 9546 126 59178 181 1284001 4025 164380 100 218 133381 564 18 11 68 72 233
181 Caribbean 331117 Haiti 1407253 19657 57656 11 143 393 4 7 127 2013 8221 6203 11 4800 504 1796 26 1651 29 23 5081 47 1416 583 31 121 12 638 12 13 1912 4192 0 646 0 4 167 7 15591 4 2569 48 11 4 21 4225 9049 142 0 26873 0 23 12 4108 4 2 34355 5744 9 228 8 15 134 0 21722 99126 2340 82 1380 6 2 4 1363 0 0 0 86 106428 3273 0 0 0 22 10884 117 0 212 91 8439 9228 2 1563 17 6 25660 331117 0 4028 168 22 6448 367 138 13 422 0 348 13395 31702 2590 179 27 172 0 4 7 36 29 2067 0 4 43 0 33 38 27 0 90 0 17 53 0 10100 0 9 0 6494 4 4 11 130 2934 43 17 8 3 8 0 18284 8 139 1862 43 334 0 0 107 6 424 0 2894 2 92 6021 4652 798 1933 20309 0 925 8 799 223 2544 0 130 13200 14639 0 15235 4 0 8 44 6 260 0 25 23 1274 31 4 4 4 507 8 19684 33 270 6 4575 8 547 4225 905 0 101 13 0 17 0 20 17934 12 179 0 310 4 13 820 3 24437 29 255592 4005 2861 10 0 35810 162 17 2 33 27 38
182 Anguilla ai Anguilla 18.221 -63.069 1049 Saint Kitts and Nevis E 6520 286 1073 150 836 494 581 360 1049 513 649 529
183 Antigua and Barbuda ag Antigua and Barbuda 17.061 -61.796 6309 Guyana E 28733 221 183 40 5 7 2 294 12 12 99 422 12 137 20 15 4624 1740 10 1337 43 5 84 31 188 77 6309 33 7 81 74 3889 20 56 5 5 1110 16 12 42 0 55 464 660 893 27 46 12 46 249 701 6 969 2559 727 40
184 Aruba aw Aruba 12.521 -69.968 8412 Colombia E 35950 445 6605 743 8412 149 4317 330 355 1194 854 4388 1121 900 224 156 1520 13 813 3411
185 Bahamas bs Bahamas 25.034 -77.396 40491 Haiti E 61343 329 554 11 94 5 74 29 103 30 19 25 13 94 9 13 1286 14 25 138 9 135 49 281 4 4 9 41 220 33 7 61 4 5 131 208 45 48 36 16 24 1148 40491 33 10 2 531 25 5 35 11 122 5764 22 13 3 14 5 113 2 4 53 19 6 137 8 12 41 276 982 17 16 9 5 91 18 17 58 24 4 2 3 60 59 28 8 23 159 5 5 204 19 295 6 4 1492 4534 15 28 2 4 7
186 Barbados bb Barbados 13.194 -59.543 4938 Saint Vincent and the Grenadines E 32280 3460 4025 305 33 73 898 607 759 3436 593 837 4456 4938 2351 4015 1494
187 British Virgin Islands vg British Virgin Islands 18.421 -64.640 1619 Saint Kitts and Nevis E 9144 63 1152 404 10 12 14 97 3 9 126 3 2 8 5 645 779 12 30 3 875 9 20 8 284 2 12 1 113 13 9 3 33 1619 286 1089 6 1 215 2 459 702 6
188 Caribbean Netherlands 3986 Curaçao E 12613 84 491 28 24 3 732 21 63 62 85 17 17 570 44 3986 22 1320 31 0 0 26 160 97 9 43 17 382 29 63 26 0 2048 3 2 46 10 25 0 13 498 17 403 7 54 570 0 465
189 Cayman Islands ky Cayman Islands 19.313 -81.255 13236 Jamaica E 33671 71 30 18 242 66 240 236 18 453 45 93 1863 21 539 169 972 18 26 87 15 51 177 23 432 26 2352 748 15 299 18 120 13236 29 48 26 54 51 74 510 39 15 144 177 21 2419 63 15 42 51 39 106 71 404 2753 21 3691 48 15 26
190 Cuba cu Cuba 21.522 -77.781 5008 Spain E 16177 407 939 114 49 4 7 102 3 173 3 6 17 26 2 3 20 35 14 4 6 2 60 4 41 139 2 3 63 13 3 183 307 3 165 23 41 2 3 189 3 7 3 10 125 63 7 28 6 2 21 4 154 2 5 352 3 20 91 84 28 2 71 13 6 10 966 35 72 32 15 2 5 3 230 306 31 10 23 4 7 4 9 58 5 7 2 416 7 10 3 22 279 5 2 6 86 2 7 89 7 99 16 128 9 71 2101 4 4 6 2 19 4 1 5008 5 10 1 13 27 39 3 17 2 639 2 52 2 554 2 28 10 201 2 29
191 Curaçao cw Curaçao 12.170 -68.990 9311 Netherlands I 36865 81 457 42 53 21 1674 0 80 187 89 98 88 2287 479 110 4699 229 105 5599 10 2 122 2 93 449 1928 625 179 23 1274 128 247 31 13 9311 1 1 103 901 15 178 1 285 490 20 1833 95 24 324 28 1751
192 Dominica dm Dominica 15.415 -61.371 1403 Guadeloupe E 6419 192 993 18 469 43 7 11 155 0 1 79 170 36 11 0 0 1 1 75 21 28 7 1403 0 176 36 1 26 1 120 0 31 132 0 150 10 0 47 7 16 58 261 116 18 16 283 1 587 577 28
193 Dominican Republic do Dominican Republic 18.736 -70.163 258814 Haiti E 402506 8 29 88 25 192 368 3653 8 456 92 1334 126 29 4 38 12 677 79 25 12 12 502 8 1313 17 494 4 163 4 4925 4 9 17 8 4 2615 4995 6494 12 2146 4 9435 45 8 17 8 96 32 1313 8 506 62 3490 17 7028 130 12 134 657 4 62 258814 599 70 20 397 29 96 8 70 256 9622 582 1736 50 4 106 4 32 20 991 4 38 25 38 25 50 17 46 70 8 2402 4 4 125 17 29 17 8 8 799 8 8 574 4 58 92 229 967 85 2753 158 657 220 12120 758 8 42 397 130 106 385 4 8 32 4 249 20 20 21 12 4 4 335 7 10167 260 5 142 511 2959 106 8 17 20 138 12 101 4 4 168 803 4 12602 652 2247 19680 75 17 4 8 4
194 Grenada gd Grenada 12.117 -61.679 3298 Trinidad and Tobago E 11367 3007 1110 57 45 268 21 341 112 513 174 15 22 246 568 3298 1057 513
195 Guadeloupe gp Guadeloupe 16.265 -61.551 54932 France E 97081 1054 4350 153 456 62 489 4310 934 54932 1174 310 185 15063 197 356 251 9309 789 460 392 407 37 220 291 411 489
196 Haiti ht Haiti 18.971 -72.285 5005 Venezuela I 38061 813 1901 928 339 1253 665 694 1651 546 2399 4799 887 1787 2447 442 610 700 3082 2585 752 3205 571 5005
197 Jamaica jm Jamaica 18.142 -77.332 9331 United States E 34907 338 3382 230 997 804 11 1979 150 2697 207 199 310 455 242 1698 186 112 144 494 338 3464 7139 9331
198 Martinique mq Martinique 14.642 -61.024 46259 France E 60653 556 1129 103 130 74 155 416 136 46259 1777 5367 9 1739 83 407 1994 14 154 151
199 Montserrat ms Montserrat 16.742 -62.187 278 Dominica E 1321 11 105 115 5 2 12 1 0 13 37 0 0 278 23 1 1 3 2 3 242 9 12 14 0 1 0 0 1 2 117 19 29 0 0 43 105 115
200 Puerto Rico pr Puerto Rico 18.221 -66.590 188954 United States E 319393 2985 15840 3 1309 10 11 8 4 74 126 156 737 1116 4002 1007 17392 18 1563 67415 931 47 586 188 661 12 352 67 129 758 16 65 12 19 12 59 251 57 111 119 24 2861 4 5 36 7 307 14 1483 958 185 25 46 153 19 23 11 1772 20 24 228 29 9 227 188954 570 3088 83
201 Saint Kitts and Nevis kn Saint Kitts and Nevis 17.358 -62.783 1133 United States E 5673 50 203 188 212 2 6 8 72 2 8 2 97 106 2 85 21 10 24 50 1 1 185 516 1 5 23 6 2 34 5 837 23 1 49 5 1 6 1 6 190 1 2 1 2 1 1 2 232 5 14 1 2 87 5 75 124 2 2 1 60 5 1 5 2 2 1 170 2 5 1 315 2 1133 351 10 2
202 Saint Lucia lc Saint Lucia 13.909 -60.979 1875 Guyana E 12180 1403 2851 35 113 18 17 13 740 1 7 12 4 244 4 48 23 219 46 4 71 290 71 23 153 43 4 1875 113 17 178 25 10 452 10 31 20 1 13 18 28 17 43 415 10 41 28 742 924 630 20 61 1
203 Saint Vincent and the Grenadines vc Saint Vincent and the Grenadines 13.253 -61.197 3445 Trinidad and Tobago E 10260 350 2144 77 635 436 170 936 194 290 3445 891 692
204 Sint Maarten 3510 Dominican Republic I 27021 559 1677 379 529 4 1273 3 72 895 38 163 172 3 206 820 1411 1480 3510 88 2 7 2030 1789 2718 826 59 18 2340 15 318 74 7 723 4 2 2 26 1032 482 69 3 516 206 52 309 69 41
205 Trinidad and Tobago tt Trinidad and Tobago 10.692 -61.223 5814 Grenada E 32488 1673 5020 847 5814 5301 426 548 5528 2087 3810 1434
206 Turks and Caicos Islands tc Turks and Caicos Islands 21.694 -71.798 7037 Haiti E 11356 1196 745 18 457 766 7037 414 723
207 US Virgin Islands vi US Virgin Islands 18.336 -64.896 17132 United States E 63271 23 697 1091 5251 579 434 2789 74 211 6547 5958 687 805 446 904 4646 8326 3962 600 172 1937 17132
208 Central America 898680 United States 1915673 989 17127 56 29 199 10 12 85 0 126 20569 127 61 914 863 29 137 4 104 87 34 1618 4369 1 30 11 3402 18 5 8240 22 6 484 7 1 10 63 14005 6 6 78 14 1 113 10228 27041 3635 23 84411 4 38 0 23161 33 173 24299 84 25 413 136 121 555 1 80 10235 6832 331 61177 1 1 27 66 1 0 6 254 10663 46 3 3 1 75 11365 30 9 624 395 46 11 6 79790 31 6 92 1749 0 54778 557 32 5382 355 543 95 457 0 2715 9993 1768 4394 224 22 94 0 23 7 7 52 1765 0 12 85 6 115 34 16 2 106 3 15 6 0 19 18 9 1 32745 0 12 24 21 4 343 20 98 4 3 24 2551 2 185 340185 0 257 0 1 376 7 277 1 17235 1 868 15436 2189 1467 854 2822 6 7095 24 0 713 3500 4 0 6 18 41 23 3 2 0 217 137 114 2 1 115 28 173 71 1 28 329 2 29690 33 376 4 40 2 933 3006 545 0 267 20 0 6 0 2 176 33 448 1 0 0 22 1052 19 7103 27 898680 8 3991 21 0 22183 150 0 2 18 8 23
209 Belize bz Belize 17.190 -88.498 21218 Guatemala E 50860 339 1489 773 924 79 11223 75 21218 59 4636 414 746 59 5074 50 513 3189
210 Costa Rica cr Costa Rica 9.749 -83.753 303523 Nicaragua E 419572 528 13408 4 4 11 3 1478 6 33 67 129 3 11 1 3 10 5 294 140 1 10 4 372 548 71 3 9 1417 5 8 5 112 1750 293 3306 1 18258 8 3 24 5793 45 3 37 3 64 5 1105 1281 10 10729 3 1 1 23 879 11 1 11 1878 1 4 34 8 8 5 2676 28 71 3949 73 1 56 18 101 14 30 172 2144 219 285 10 5 8 4 1 90 10 4 9 14 3 4 1 4 3119 1 14 4 4 4 11 8 591 18 303523 3 77 3 9 13769 83 3809 140 304 78 359 3 255 4 100 602 1 1 1 1 1 13 1 26 8 11 23 1 58 1 2177 1 20 1 138 676 10 6 35 4 8 9 157 524 4 12752 6 316 1 1390 1 1
211 El Salvador sv El Salvador 13.794 -88.897 11558 Honduras E 41615 1 5 214 4 27 11 6 39 52 335 53 239 1 3 243 3 227 256 8 571 867 127 1 6 1 71 122 1 212 1 225 3 5 8795 4 11558 1 2 11 1 18 1 11 42 279 10 54 8 1 1 9 8 1 1697 1 1 2 33 3 7743 8 2 447 11 231 19 5 12 61 127 1 18 2 2 1 4 528 4 45 35 59 2 1 1 3 89 5342 74 1 239 2 4
212 Guatemala gt Guatemala 15.783 -90.231 18295 El Salvador E 72764 528 67 1 873 129 229 378 287 626 1102 1107 629 104 159 31 18295 3 246 19 609 379 8 12 13 7993 25 38 18 11 125 351 10 140 1 24 7 1 16716 134 8158 25 286 56 435 64 27 96 1702 31 9 1258 44 45 147 75 1 24 213 8236 134 269 1
213 Honduras hn Honduras 15.200 -86.242 6353 El Salvador E 27503 3 137 6 13 1 18 262 106 170 251 65 223 428 623 618 439 45 13 97 331 1 6353 12 104 1 210 10 3306 1 31 13 8 65 187 19 100 29 7 1125 3 66 2 5574 8 286 25 276 3 7 93 49 18 6 3 377 111 1 22 44 3 3 1 6 74 4889 48 74
214 Mexico mx Mexico 23.635 -102.553 848576 United States E 1103460 13 13 112 10 6 58 0 2 15746 110 13 499 576 21 26 56 6 17 973 2659 7 2286 17 5211 2 283 6 0 6 45 9131 2 1 5 0 0 6056 8360 0 10 16005 0 15 2853 29 60 13920 12 15 378 33 89 290 1 23 1843 2530 225 9299 1 1 17 17 0 0 2 169 8235 5 3 2 0 14 7145 9 1 287 1 15 1 1 40609 18 2 7 1081 0 12636 424 18 992 175 314 54 311 1347 5707 144 3453 47 11 75 9 7 2 38 1119 0 5 24 2 66 16 6 1 62 0 13 3 7 8 5 5 8 3 268 10 1 3 11 1230 118 4107 158 1 203 1 165 1 2030 0 581 6767 573 976 506 1535 4553 9 456 1807 3 2 7 14 0 0 122 37 66 0 0 54 4 118 58 3 222 1 21700 19 32 1 11 1 477 1678 220 0 134 11 5 31 23 311 1 8 378 14 3885 11 848576 2726 15 11569 93 1 7 17
215 Nicaragua ni Nicaragua 12.865 -85.207 12717 Honduras E 41482 122 2230 32 2 59 7 123 278 10 40 5 87 3 2 47 26 67 5 126 64 2 260 130 144 460 8 11057 2 967 3 14 25 55 3 71 115 1 2510 42 2 11 154 1 309 8 1 1809 9 2 25 12717 8 26 6 10 3 26 9 196 22 42 28 3 2 6 5 1 17 1 1 1 2 9 869 2 3 82 1 13 14 5 417 7 236 20 10 5 60 64 7 200 3 1 1 6 97 2 2 2 20 3 474 1 34 87 9 1 3 1 1 82 3 73 9 3651 40 2 164 2 16 1
216 Panama pa Panama 8.538 -80.782 47392 Colombia E 158417 7 10 13 6 12 1 2188 7 15 238 94 0 13 3 36 28 12 234 74 0 13 7 389 1 0 1717 21 4 63 1 1 1 7 1552 1 9 1 1 1555 16010 242 12 47392 4 7 6659 1 87 2424 27 4 34 7 4 127 48 6944 2294 62 2768 7 3 1 1 39 833 9 1 49 914 17 4 280 7 22 2 1377 4 4 42 465 1289 51 11 3845 117 74 12 79 955 1129 598 320 102 3 9 6 1 12 452 6 34 40 3 6 1 25 1 3 7 1 4 4145 6 2 18 67 3 85 3 2 415 2 43 11080 33 66 3 71 1 105 3682 1373 169 219 618 3 345 4 156 855 10 40 1 3 1 43 2 22 1 40 13 30 13 1 3 39 3176 9 144 3 7 182 315 228 124 9 1 2 103 4 97 4 432 2 1732 3 12045 2 653 2 8478 51 2 1 1
217 South America 1034087 Colombia 5225144 18394 48684 309 307 679 1 84 6905 60 116 272888 918 708 3967 6707 35 140 60 93 371 465 6969 1753 30 25 11 450015 134 20 214600 17 160 1340 59 28 101 246 16095 1259 100 18 25 34 0 259801 68969 747 41 1034087 5 220 4 5118 367 3086 24778 1050 114 4130 1278 149 1993 2 838 14806 74133 4066 2916 79 36 412 120 14 81 16 1245 59744 796 10 46 56 92 52819 175 35 4080 30 407 2188 6 2604 90 984 24243 20017 4 2381 4475 581 2971 1176 1448 767 1008 3 5793 249886 689 65545 1809 47 154 87 148 6 1269 521 22530 18 99 338 133 1387 292 92 31 315 16 127 124 4 4809 10 5 1 36087 14 164 22 244 22 1928 1571 44 64 54 66 18390 29 898 3947 45 1454 13 9 1855 46 757 31 6130 21 647705 418019 1567 15839 192022 2215 44 23512 652 387 5574 9473 777 931 80 1833 13 534 8 69 78 2037 226 1114 34 29 276 231 403 1506 8 27 14567 38 235349 115 1510 30 32655 11 3879 11277 16731 20 707 2808 54 48 0 343 3575 223 1801 41 6 5 100 7674 104 27638 125 129729 12 157528 69 218 75388 252 1 7 17 37 172
218 Argentina ar Argentina -38.416 -63.617 598711 Paraguay E 1885678 15340 35793 12 89 139 1 12 748 1 365 1363 16 10 404 715 8 370983 43510 1 393 15 29 705 31 193007 12729 6 2301 56 163 1 1313 1473 62 2387 18 327 6 910 1273 316 99 65 43 1 94 7299 8405 19 1356 22 14 128 1 55 88 1085 11 131 28 183 49 87 742 140990 16 4044 97 4 377 164 856 68 103 522 129 8 4 3 1931 6 13 282 14 12 3 515 14 120 1 57 79 7 215 598711 171964 78 8471 5745 101 7386 607 1434 2509 22 106 3 1079 3 167 6 90494 4 5 7 272 1056 1221 80 1984 46 61 845 5 1 5104 1256 1 5948 119533 11 1652 7 1 2
219 Bolivia bo Bolivia -16.290 -63.589 46068 Argentina E 154330 35 4816 4 10 13 4 7 15 46068 2 7 133 256 4 13 2 22 13 7 518 1704 24012 28 2 2 3 2986 4 33 4 7748 1199 28 1949 2 224 4 101 667 296 6 157 60 11 96 10 36 1002 51 158 2 7 6 2 86 777 4 6 2325 3 13 2 243 3 7 12 367 68 5 210 25 56 7 40 125 1382 4 2500 26 4 12 6 2 364 4 2 7 2 10 6 6 7 12 5 16193 4 2 5 2 22 2 48 135 2 18 133 2 58 160 2 4784 15001 52 308 55 67 10 1000 10 81 633 2 2 4 14 4 2 10 76 19 15 31 2684 7 93 2 259 657 28 6 12 3 16 10 17 2 4 213 2 767 4 5689 744 10 4 812 4 2 6 11
220 Brazil br Brazil -14.235 -51.925 139825 Portugal E 599678 58 186 11 6530 29456 54 597 2369 15 26 46 28 8 1716 5 26 39337 70 144 242 25 21 27 142 1608 1210 12 15640 19657 6942 80 392 336 580 2105 452 147 98 500 20 317 1753 3157 232 56 184 10 522 9688 717 31 65 16459 63 1561 26 296 58 957 1922 55 128 1546 489 893 739 542 517 0 2038 37664 140 49717 1069 24 47 86 20 5 143 12502 35 97 16 640 55 36 10 122 9 6 28 2715 128 22 514 1444 12 49 51 3368 276 372 13 1133 581 19 261 20 527 39778 15222 361 3529 139825 8692 1729 1406 13 30 148 29 34 59 332 188 438 29 6 116 215 178 1608 20 31149 41 17 276 643 3025 2089 7 467 38 50 9 190 81 366 22 66 744 32 5013 88 23828 24371 26 2907 130 103
221 Chile cl Chile -35.675 -71.543 149335 Peru E 398251 19 31 55 11 69 19 15 66701 13 5 1235 662 3 1 3 8 5 8 1047 3 1 6 5 27105 14 6 10850 0 0 115 1 1 5 8 2291 1 1 3 22 5614 65 11 15525 1 15 3 576 11 474 3779 5 15 182 8 16 289 0 36 344 21521 100 289 3 3 55 6 3 3 11 167 3927 3 8 6 3 3 7238 9 6 241 6 6 9 5 279 5 3 19 57 3 296 410 14 685 108 101 29 161 671 4683 27 1011 106 10 24 11 5 1 43 253 13 6 28 3 23 19 11 3 31 1 111 19 6 1 3 1 2153 1 11 1 1 108 58 1 8 10 11 812 5 178 296 13 25 6 9 424 6 199 3 638 5 1518 149335 249 551 312 230 33 1328 11 3 447 733 6 416 15 75 3 6 3 14 23 8 1 73 65 51 0 14 12167 3 10950 10 873 2 3 3 1557 1282 379 3 45 505 24 342 13 20 319 3 3 3 199 6 10801 11 9984 1 2834 5 1 5115 13 1 5 6 13
222 Colombia co Colombia 4.571 -74.297 45402 Venezuela E 129632 113 48 25 1 45 52 41 39 3115 16 299 214 203 19 9 7 2 11 13 424 7 8 3 797 6 6 2275 6 6 82 2 1 8 10 959 8 9 17 7 6 1970 1983 34 19 1 13 1 1029 3 55 1772 89 5 39 195 13 89 1 48 374 13857 137 373 3 8 21 10 1 46 2007 7 2 1 5 2299 9 10 114 2 5 1 1 448 5 6 19 113 343 137 11 140 81 115 22 127 456 2734 58 703 174 5 16 25 1 9 19 1142 1 15 3 2 44 22 5 8 11 2 2 7 2 2 1 2 2779 3 3 6 69 9 5 1 343 19 50 558 45 80 6 41 5 2012 1 211 4911 94 248 112 538 267 3 3 216 655 5 3 13 9 6 6 8 3 69 13 1 8 22 10 28 8 52 6455 8 6 6 1 177 661 132 1 8 3 1 6 37 11 46 2 15 220 40 1205 8 18346 5 424 13 202 45402 10 2 4 9
223 Ecuador ec Ecuador -1.831 -78.183 181115 Colombia E 359315 82 106 71 64 7867 56 546 798 3 71 7 18 18 1248 7 3 11 2227 14 7 3868 284 7 29 67 3410 3 16518 4265 146 11 181115 39 1365 3 120 4365 14 11 461 709 3 266 18 517 124 762 18 7 11 78 188 3297 50 6417 56 106 11 628 14 11 29 142 684 316 29 333 96 280 53 290 759 5602 56 1070 106 3 32 21 11 24 645 35 18 21 39 14 53 3 3 32 3 3290 3 11 71 11 3 3 3 1209 3 167 575 14 74 7 344 11 78 3 1403 3 354 19960 184 458 535 730 1181 14 444 2177 11 3 14 131 11 39 74 35 181 4 10888 14 146 3 29 3 511 2861 96 11 128 3 67 21 32 11 3 3 585 7 3144 39038 3 1397 14 12965 71 3 7 7
224 Falkland Islands fk Falkland Islands -51.796 -59.524 1120 United Kingdom E 1975 31 40 1 1 8 12 79 1 1 1 1 3 1 2 3 12 1 1 1 1 2 1 6 1 1 1 2 1 1 1 2 4 25 1 6 15 2 2 15 512 2 1 6 3 1 2 1 1 1120 1 18 4 1 11 1
225 French Guiana gf French Guiana 3.934 -53.126 27620 Suriname I 104291 1002 3195 90 140 17478 1118 649 22538 2176 3297 17052 127 862 4763 454 381 1349 27620
226 Guyana gy Guyana 4.860 -58.930 4662 Suriname E 14770 19 16 272 2166 11 406 1166 44 197 299 21 11 223 373 4662 893 583 1273 3 2132
227 Paraguay py Paraguay -23.443 -58.444 82116 Brazil E 185776 75919 28 146 1 1 121 1304 82116 1076 2551 780 329 47 255 39 21 16 94 47 419 1939 14 39 6 1 37 126 27 2 21 513 2 2300 14 575 1695 46 15 27 16 16 45 1686 27 325 44 39 2654 580 11 160 1041 5 33 285 44 1 5 156 172 1992 3578 152
228 Peru pe Peru -9.190 -75.015 13199 Argentina E 104919 7 8 23 7 18 26 13199 1 688 230 6 6 6 3 3 7 715 3 3 6654 11 1 5651 9 80 9 3 1 12 1424 1 2 8350 4751 6902 3 10 394 3 108 1053 1 107 103 1 285 1 6 214 4639 26 127 10 20 9 1 83 2685 41 1 2 8 3403 8 69 8 191 2 7 12 59 1 195 77 18 241 51 68 23 247 591 3890 7 3900 49 1 9 1 7 2 11 82 6 6 7 7 18 6 2 53 1 3 27 2 8 1735 1 2 2 48 3 1 1 38 1 790 111 189 2 16 125 1 85 404 8 636 376 231 152 161 1 776 7 1 216 732 2 9 28 2 2 2 40 1 1 6 12 1 36 8 136 1 5900 28 0 6 1 330 908 13 3 27 144 3 1 9 7 63 1 3 281 9 1928 8 11461 713 1 3764 6 8 4 13
229 Suriname sr Suriname 3.919 -56.028 11530 Guyana E 41670 1897 1264 7159 4495 3319 11530 918 10719 369
230 Uruguay uy Uruguay -32.523 -55.766 22425 Argentina E 73528 120 3616 22425 10614 293 1393 690 877 10442 483 1535 1368 974 467 510 14453 176 2605 487
231 Venezuela ve Venezuela 6.424 -66.590 819024 Colombia E 1171331 14 15 77 5 153 2 8107 28 396 121 679 8 5 10 324 16 1608 19 4893 116 4 925 4 58 12545 11211 467 819024 5 927 6 334 9309 643 13 306 38 7 118 1 12078 29994 155 829 7 23 42 29 59 3095 24 2 11 3445 27 605 138 2 352 2 7401 1553 242 836 3 210 48 75 65 50 3 390 41858 79 299 168 8 58 2 114 6111 111 120 4 6 28 2 3 35 3113 3 222 831 43 562 14 1675 86 73 12 726 2 178 38112 131 742 44775 349 226 712 549 8 4 6 98 1311 12 676 4 14 133 19 84 2 59 4 61332 2 392 3 39 3 95 542 12729 57 6 3 2303 12 108 4 172 7 1473 4 9178 3930 10 2 13
232 NORTHERN AMERICA 13020810 Mexico 53094891 572 958 111769 97313 55860 130 151 9967 1685 25515 204433 95346 6138 96134 78679 25092 36866 4806 243729 73309 73976 52913 55542 1673 11434 292 93982 165225 1152 388327 3954 6186 91169 1266 5688 196806 53181 869723 38885 446 4066 939 1440 0 140610 2887002 491282 16573 769974 135 1733 67 88133 13603 89307 1211890 4006 20706 56004 194 25119 59462 622 38812 975751 488674 219287 1421638 547 44017 18039 203226 53 18 71894 36011 281284 222 2441 1299 8782 16757 881587 171932 1595 231514 754 40248 3827 40 948347 15255 182 382477 739500 0 556802 135796 5870 2579591 124117 502046 220570 169658 0 174899 746707 908583 380820 85201 34091 139261 1878 39085 4867 213524 32171 213891 714 80902 4938 104 52407 3810 4238 2301 90783 34 1855 21683 9038 2306 692 14293 0 13020810 19821 771 861 24332 6421 115182 3781 104025 1441 182 92258 214256 492 42881 284818 906 271684 0 7298 36920 2505 496231 2989 115547 3074 27679 473595 2363147 693832 349392 1685482 3849 1280940 48738 218 284163 514131 5163 18 15293 26533 427 38008 12462 791 144 79748 16076 135913 2390 37573 48837 1028 41432 19360 142 121499 148407 33604 115482 177458 50864 27697 8915 188 62004 62833 98416 4485 279861 43995 11 3107 73 20606 325379 18242 133686 1544 1326 155 32386 445900 21726 1437337 41824 320180 11 56394 65348 158 231558 1565875 28 0 51696 11729 28239
233 Bermuda bm Bermuda 32.308 -64.751 4047 United Kingdom E 19066 358 679 69 32 23 2294 349 30 36 21 145 248 125 106 102 1674 527 102 75 73 607 672 37 187 37 410 33 1616 26 261 130 125 68 144 83 4047 3515
234 Canada ca Canada 56.130 -106.347 674371 United Kingdom E 7284069 42060 12648 38088 130 40 3722 108 2709 22667 2675 683 24721 24056 2772 1297 1958 39664 17925 8418 23794 2443 979 2408 148 4610 32970 444 20321 136 5106 18807 752 5232 23344 4229 245 47 233 251 1059 31097 639813 249112 6962 48441 62 780 0 4213 3341 44918 10696 420 4845 25393 194 17981 20093 598 3387 7742 15819 47302 49871 34 7452 6165 23247 18 27978 14658 100896 80 120 882 535 1850 200414 22211 251 83910 52 10560 409 40 18386 2663 85 101004 73966 6108 53206 786 518293 15517 108632 38980 25985 26486 340444 142933 34250 8892 7536 26657 0 12688 1468 16565 8129 87536 115 1662 4065 69 7514 734 2527 570 26127 34 1115 9438 0 524 529 11310 0 69982 56 120 666 220 836 46056 1241 5681 517 23 4149 128873 130 12046 10525 359 19325 6204 1217 157118 23 3325 342 8743 26412 363805 195712 172749 467 1600 135744 6267 148 95499 75673 4338 18 2755 4821 427 11498 108 18 11 15842 2903 22102 1025 3359 11731 108 17287 10815 34 22951 46187 8138 12284 124137 7457 6707 934 188 8282 23822 21977 672 11942 9780 11 1696 91 76310 9187 26737 262 52 11 12933 69048 12079 674371 22900 316649 11 8140 3114 11 12962 184799 28 1570 3164 9153
235 Greenland gl Greenland 71.707 -42.604 5207 Denmark E 5694 136 97 18 5207 5 92 44 79 16
236 Saint Pierre and Miquelon pm Saint Pierre and Miquelon 46.885 -56.316 712 France E 972 78 182 712
237 United States us United States 37.090 -95.713 12950828 Mexico E 45785090 69709 84665 17772 111 6245 1577 22806 181766 92671 5455 71344 54591 22320 35569 2848 204065 55384 65558 29096 53099 694 9026 144 89372 132255 708 368006 3818 1080 72362 514 456 173462 48952 867411 38640 399 3833 688 381 109513 2246840 242170 9611 721533 73 953 67 83920 10262 44389 1201164 3586 15861 30611 7138 34126 24 35425 967988 472855 171985 1371767 513 36565 11874 179979 53 43916 21348 179531 142 2321 417 8247 14907 680925 149596 1344 147498 702 29688 3418 929961 12592 97 281371 663860 550694 82590 4992 2060771 108600 393414 181590 143571 148338 406190 765043 345898 76309 26555 112604 1878 26397 3399 196959 24042 126355 599 79240 873 35 44893 3076 1711 1731 64619 740 12245 9038 1782 163 2983 12950828 19765 651 195 24112 5585 69126 2540 98344 924 159 88109 85383 362 30835 274293 547 252172 7298 30672 1288 339076 2966 112222 2732 18936 447183 1998932 498087 175027 1685015 2249 1145196 42471 70 188638 438458 825 12538 21712 26510 12354 773 133 63906 13173 113811 1365 34214 37106 920 24145 8545 108 98548 101959 25466 103068 53321 43407 20990 7981 53643 38886 76439 3813 267919 34215 1411 73 20515 249001 9055 106805 1282 1191 144 19453 376852 9647 758919 18924 48254 62234 147 218596 1381076 50126 8565 19086
238 OCEANIA 1593606 United Kingdom 7938121 56434 31030 31173 3201 3209 2662 25 575 3 46 16002 1295 55 89632 23687 387 335 1808 34876 694 1779 8067 88 91 770 1635 1140 40753 1307 20220 20 3918 4660 57 2121 41965 304 59277 25 20 52 35 65 3369 32379 570995 106605 3267 13674 22 1107 25417 492 295 75835 784 179 22840 16125 82 2917 13711 196 38 164 2206 45810 11770 11 3373 3300 10824 40 220 118330 10832 100959 23 1921 49 208 553 152018 5046 520 137457 47 150 12 1528 499 892 11 803 121 6 307 25878 827 423859 99537 39688 59539 86983 1162 12737 234169 1312 71857 6272 1422 17947 2783 5416 406 14033 6429 97328 154 3337 2711 22 3548 288 305 1306 164486 618 76 52851 734 29 74 29348 82 4223 9467 91 860 1199 9 2861 1006 24827 1548 1251 32574 123380 5797 592437 890 57 5523 7092 2629 5500 1688 38631 2245 291 35177 506 11071 264163 65174 20079 1345 806 150394 945 160 21066 30319 711 70 28 68 0 61 116429 11 14 14675 364 46563 3279 3802 69334 47 6186 8182 3370 9257 220425 15751 17590 108465 3222 12983 150 421 13069 19841 10393 96 65111 54249 11343 333 2688 39117 1971 1605 43602 88 7 3248 3408 17026 6852 1593606 4443 142364 18 11786 1290 7577 3598 233549 8454 17 745 7967 44531
239 Australia and New Zealand 1591324 United Kingdom 7601468 46251 4322 31173 3201 1550 848 25 575 3 46 16002 1295 55 80835 23687 387 335 1808 32028 694 1779 8067 88 91 770 1635 1140 40753 1307 20220 20 3918 4660 57 2121 41156 304 58835 25 20 52 35 65 3369 32379 561921 106605 3267 13674 22 1107 25389 492 295 75835 784 179 22840 16125 82 2917 13711 196 38 164 2206 45810 11770 11 3373 3300 10824 40 220 115868 10832 35987 23 1065 49 208 553 151540 5046 520 137457 47 150 12 154 499 892 11 803 121 6 307 25878 827 420604 84688 39688 59539 86382 1162 12737 233636 1312 68149 6272 1422 17947 1776 5416 406 13167 6429 97328 154 3337 2711 22 3548 288 305 1306 163968 618 76 52851 103 29 74 29348 0 4223 54 91 860 1199 9 2069 1006 24827 1548 1100 32434 123368 1526 582761 890 57 5523 7073 9 5500 1688 36336 28 291 35048 506 11071 209661 65172 20079 118 806 144473 945 160 21066 30319 711 70 28 68 0 61 85014 11 14 14675 364 46563 3279 3802 69334 47 6186 8182 2910 9257 220425 15751 17348 108141 3222 12983 150 421 13069 19697 10393 96 65111 54249 11343 333 2536 37053 1971 699 43602 88 7 1741 3408 17026 6852 1591324 4443 112822 18 11786 1290 1839 3598 232029 38 17 745 7967 44531
240 Australia au Australia -25.274 133.775 1277474 United Kingdom E 6468640 44460 3966 28411 3063 1392 219 22 546 0 43 14832 1253 41 21964 322 278 1435 30178 482 1564 7175 74 85 524 1617 964 40127 1146 17949 14 3556 3706 54 1971 33616 278 47248 22 13 30 32 54 2203 30606 447407 96704 3063 13172 22 985 6458 439 284 73165 739 121 22393 14971 68 2806 11791 139 32 150 2110 44079 11694 11 3223 3170 9627 29 67233 10323 32803 17 390 43 182 450 137677 4572 432 136221 41 139 6 128 450 889 11 653 107 6 278 24267 674 364764 78744 36090 51779 77513 781 11652 231650 1092 55816 5825 1114 16000 718 4637 353 12016 6093 96800 128 3288 2581 22 3395 246 268 1071 145227 503 65 52346 43 29 74 28936 3726 32 85 792 1199 6 1885 910 23742 1178 792 31689 94894 1249 582761 868 54 4851 824 3 4894 1318 33488 22 246 33434 461 10430 189969 62595 19833 96 718 107360 846 146 18130 24417 631 44 22 54 43 19759 11 11 13868 353 45053 3191 3737 63077 32 5847 7978 2238 6865 166731 15381 16738 98792 3084 12678 128 353 11555 15817 9938 74 57176 53225 11309 322 492 10613 1756 631 42826 74 4 161 3030 15539 5890 1277474 3984 89957 12 11405 1114 1435 3406 225749 24 17 642 6275 34034
241 New Zealand nz New Zealand -40.901 174.886 313850 United Kingdom E 1132828 1791 356 2762 138 158 629 3 29 3 3 1170 42 14 80835 1723 65 57 373 1850 212 215 892 14 6 246 18 176 626 161 2271 6 362 954 3 150 7540 26 11587 3 7 22 3 11 1166 1773 114514 9901 204 502 122 18931 53 11 2670 45 58 447 1154 14 111 1920 57 6 14 96 1731 76 150 130 1197 11 220 48635 509 3184 6 675 6 26 103 13863 474 88 1236 6 11 6 26 49 3 150 14 29 1611 153 55840 5944 3598 7760 8869 381 1085 1986 220 12333 447 308 1947 1058 779 53 1151 336 528 26 49 130 153 42 37 235 18741 115 11 505 60 0 412 497 22 6 68 3 184 96 1085 370 308 745 28474 277 22 3 672 6249 6 606 370 2848 6 45 1614 45 641 19692 2577 246 22 88 37113 99 14 2936 5902 80 26 6 14 18 65255 3 807 11 1510 88 65 6257 15 339 204 672 2392 53694 370 610 9349 138 305 22 68 1514 3880 455 22 7935 1024 34 11 2044 26440 215 68 776 14 3 1580 378 1487 962 313850 459 22865 6 381 176 404 192 6280 14 103 1692 10497
242 Melanesia 40048 France 122284 4612 15475 0 0 848 0 0 0 0 0 0 0 0 7816 0 0 0 0 2434 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 809 0 275 0 0 0 0 0 0 0 119 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 385 0 40048 0 733 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2937 14828 0 0 601 0 0 356 0 0 0 0 0 0 0 0 866 0 0 0 0 0 0 0 0 0 0 518 0 0 0 0 0 0 0 0 0 0 0 0 0 0 792 0 0 0 0 0 0 251 3758 0 0 0 0 0 0 0 2295 0 0 64 0 0 1363 0 0 0 0 256 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 416 0 0 0 144 324 0 0 0 0 0 0 0 0 0 0 0 0 0 29 0 906 0 0 0 0 0 0 0 2047 0 1525 0 0 0 5240 0 838 8376 0 0 0 0
243 Fiji fj Fiji -17.713 178.065 2367 India E 22828 1617 9097 2144 2245 2367 1987 2125 1246
244 New Caledonia nc New Caledonia -20.904 165.618 37229 France E 63037 1908 4012 787 348 740 119 37229 367 1259 356 792 736 150 144 839 4843 766 7642
245 Papua New Guinea pg Papua New Guinea -6.315 143.956 12472 Indonesia E 25441 427 1127 4267 275 160 345 12472 572 518 1077 1298 256 297 324 573 1453
246 Solomon Islands sb Solomon Islands -9.646 160.156 2281 France E 7870 419 646 61 429 189 69 2281 366 225 1097 29 74 56 232 170 65 67 120 72 397 72 734
247 Vanuatu vu Vanuatu -15.377 166.959 628 Australia E 3108 241 593 628 225 538 251 312 64 119 29 108
248 Federated States of Micronesia fm Federated States of Micronesia 6.887 158.215 51558 Philippines 119509 2347 4438 0 0 0 0 0 0 0 0 0 0 0 322 0 0 0 0 414 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7138 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 520 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1374 0 0 0 0 0 0 0 0 0 11 0 0 0 0 0 0 0 0 3518 0 0 0 960 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 631 0 0 0 0 0 9413 0 0 0 0 0 0 0 0 138 140 0 0 81 0 0 0 0 2620 0 0 0 2217 0 0 0 0 51558 0 0 1227 0 5246 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1322 0 0 0 22 0 23442 0 0 0 0 0 382 0 0 0 0 0
249 Guam gu Guam 13.444 144.794 35410 Philippines E 80770 1291 1949 2942 2663 273 7580 2370 1447 35410 209 3528 20726 382
250 Kiribati ki Kiribati 1.871 -157.363 1046 Tuvalu E 2619 454 303 133 308 138 43 1046 22 172
251 Marshall Islands mh Marshall Islands 6.068 171.989 269 United States E 1705 8 726 20 70 49 29 90 149 212 39 44 269
252 Federated States of Micronesia fm Federated States of Micronesia 6.887 158.215 541 Philippines E 2600 38 198 20 344 305 74 260 14 140 140 541 526
253 Nauru nr Nauru -0.523 166.932 870 Kiribati I 2070 37 111 149 371 163 11 870 24 74 28 232
254 Northern Mariana Islands mp Northern Mariana Islands 15.098 145.674 12324 Philippines E 24155 215 818 414 2892 810 599 53 1245 140 630 12324 1018 1603 1394 0
255 Palau pw Palau 7.515 134.583 2997 Philippines E 5590 304 333 519 259 153 45 439 110 2997 76 355
256 Polynesia 31415 Samoa 94860 3224 6795 0 0 811 1814 0 0 0 0 0 0 0 659 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 167 0 0 0 0 0 0 0 1817 0 0 0 0 0 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1557 0 24924 0 123 0 0 0 478 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 307 21 0 0 0 0 0 177 0 190 0 0 0 47 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 82 0 0 0 0 0 0 0 0 0 0 13 0 12 4020 5837 0 0 0 19 0 0 0 0 0 0 65 0 0 1581 2 0 0 0 419 0 0 0 0 0 0 0 0 0 0 31415 0 0 0 0 0 0 0 0 0 0 0 16 0 0 0 98 0 0 0 0 0 0 144 0 0 0 0 0 0 152 2035 0 0 0 0 0 185 0 0 0 213 0 4575 0 0 0 498 0 300 40 0 0 0 0
257 American Samoa as American Samoa -14.306 -170.696 30947 Samoa E 41845 200 599 849 471 1028 1581 419 30947 30 1827 3594 300
258 Cook Islands ck Cook Islands -21.237 -159.778 2701 New Zealand E 3243 33 63 144 99 80 12 2701 11 12 6 61 21
259 French Polynesia pf French Polynesia -17.680 -149.407 24130 France E 34830 650 3926 811 84 154 732 37 24130 428 47 21 177 28 2340 132 98 144 102 498 251 40
260 Niue nu Niue -19.054 -169.867 169 New Zealand E 552 38 19 19 11 47 2 169 2 19 118 77 11 20
261 Samoa ws Samoa -13.759 -172.105 1812 American Samoa E 5623 128 355 1812 382 13 68 16 156 12 50 59 17 10 1704 8 53 15 122 89 85 32 418 19
262 Tokelau tk Tokelau -9.200 -171.848 121 Samoa E 298 12 6 2 23 1 6 99 121 1 23 4
263 Tonga to Tonga -21.179 -175.198 687 Fiji E 5436 2106 1795 168 687 260 103 317
264 Tuvalu tv Tuvalu -7.478 178.680 54 Fiji E 148 9 8 7 54 30 3 4 5 1 7 20 0
265 Wallis and Futuna Islands 1680 New Caledonia E 2885 48 24 780 43 82 1680 228
World Other North Other South Afghanistan Albania Algeria American Samoa Andorra Angola Anguilla Antigua and Barbuda Argentina Armenia Aruba Australia Austria Azerbaijan Bahamas Bahrain Bangladesh Barbados Belarus Belgium Belize Benin Bermuda Bhutan Bolivia Bosnia and Herzegovina Botswana Brazil British Virgin Islands Brunei Darussalam Bulgaria Burkina Faso Burundi Cambodia Cameroon Canada Cape Verde Caribbean Netherlands Cayman Islands Central African Republic Chad Channel Islands Chile China Hong Kong Macau Colombia Comoros Republic of Congo Cook Islands Costa Rica Côte d'Ivoire Croatia Cuba Curaçao Cyprus Czech Republic North Korea Democratic Republic of Congo Denmark Djibouti Dominica Dominican Republic Ecuador Egypt El Salvador Equatorial Guinea Eritrea Estonia Ethiopia Faroe Islands Falkland Islands Fiji Finland France French Guiana French Polynesia Gabon Gambia Georgia Germany Ghana Gibraltar Greece Greenland Grenada Guadeloupe Guam Guatemala Guinea Guinea-Bissau Guyana Haiti Holy See Honduras Hungary Iceland India Indonesia Iran Iraq Ireland Isle of Man Israel Italy Jamaica Japan Jordan Kazakhstan Kenya Kiribati Kuwait Kyrgyzstan Lao People's Democratic Republic Latvia Lebanon Lesotho Liberia Libya Liechtenstein Lithuania Luxembourg Madagascar Malawi Malaysia Maldives Mali Malta Marshall Islands Martinique Mauritania Mauritius Mayotte Mexico Federated States of Micronesia Monaco Mongolia Montenegro Montserrat Morocco Mozambique Myanmar Namibia Nauru Nepal Netherlands New Caledonia New Zealand Nicaragua Niger Nigeria Niue Northern Mariana Islands Norway Oman Pakistan Palau Panama Papua New Guinea Paraguay Peru Philippines Poland Portugal Puerto Rico Qatar South Korea Moldova Reunion Romania Russia Rwanda Saint Helena Saint Kitts and Nevis Saint Lucia Saint Pierre and Miquelon Saint Vincent and the Grenadines Samoa San Marino Sao Tome and Principe Saudi Arabia Senegal Serbia Seychelles Sierra Leone Singapore Sint Maarten Slovakia Slovenia Solomon Islands Somalia South Africa South Sudan Spain Sri Lanka Palestinian Territories Sudan Suriname Swaziland Sweden Switzerland Syria Tajikistan Thailand Yugoslav Timor-Leste Togo Tokelau Tonga Trinidad and Tobago Tunisia Turkey Turkmenistan Turks and Caicos Islands Tuvalu Uganda Ukraine United Arab Emirates United Kingdom Tanzania United States US Virgin Islands Uruguay Uzbekistan Vanuatu Venezuela Viet Nam Wallis and Futuna Islands Western Sahara Yemen Zambia Zimbabwe
use strict;
use warnings;
# to use with: https://github.com/lipis/flag-icon-css/tree/master/flags/1x1
my $final_size = 16;
my $orig_size = 512; # on the original files
my $flag_pref = "zflag_";
my $id_pref = "zid_";
my $id = 0;
for my $file (@ARGV) {
warn "------------- $file\n";
my $flag_id = $file =~ m{/(\w\w).svg$} && "$flag_pref$1" or die "$file is no flag";
open FILE, "$file" or die "$file: $!";
undef $/;
my $content = <FILE>;
close FILE;
$content =~ s{^.*(?:</(?:metadata|desc|title)>|<svg .*?>)}{}msi;
$content =~ s{</svg>.*$}{}msi;
# uniform ids
my %id = ();
$content =~ s{\bid\s*=\s*["'](.*?)["']}{'id="'.($id{$1}||=$id_pref.($id++)).'"'}emsig;
my $id_re = "(?:".join("|", keys %id).")";
warn "$id_re\n";
$content =~ s{(?<="#)$id_re(?=")|(?<=url\(#)$id_re(?=\))}{my $nid="$id{$&}"; warn "$& -> $nid\n"; $nid}msgei;
# capture defs
my $defs = "";
$content =~ s{<defs.*?>(.*)</defs>}{$defs=$1;""}emsi;
my $scale = $final_size / $orig_size;
print <<EOF;
$defs
<pattern id="$flag_id" patternUnits="userSpaceOnUse" x="0" y="0" width="$final_size" height="$final_size">
<g transform="scale($scale)">
<g>
$content
</g>
</g>
</pattern>
EOF
}
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment