datalib
Version:
JavaScript utilites for loading, summarizing and working with data.
1 lines • 80.9 kB
JavaScript
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.dl=e()}(this,function(){"use strict";"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function t(t,e){return t(e={exports:{}},e.exports),e.exports}var v=t(function(t){var s=t.exports,n="__name__";s.namedfunc=function(t,e){return e[n]=t,e},s.name=function(t){return null==t?null:t[n]},s.identity=function(t){return t},s.true=s.namedfunc("true",function(){return!0}),s.false=s.namedfunc("false",function(){return!1}),s.duplicate=function(t){return JSON.parse(JSON.stringify(t))},s.equal=function(t,e){return JSON.stringify(t)===JSON.stringify(e)},s.extend=function(t){for(var e,n,r=1,a=arguments.length;r<a;++r)for(n in e=arguments[r])t[n]=e[n];return t},s.length=function(t){return null!=t&&null!=t.length?t.length:null},s.keys=function(t){var e,n=[];for(e in t)n.push(e);return n},s.vals=function(t){var e,n=[];for(e in t)n.push(t[e]);return n},s.toMap=function(t,n){return(n=s.$(n))?t.reduce(function(t,e){return t[n(e)]=1,t},{}):t.reduce(function(t,e){return t[e]=1,t},{})},s.keystr=function(t){var e=t.length;if(!e)return"";for(var n=String(t[0]),r=1;r<e;++r)n+="|"+String(t[r]);return n};var e=Object.prototype.toString;s.isObject=function(t){return t===Object(t)},s.isFunction=function(t){return"[object Function]"===e.call(t)},s.isString=function(t){return"string"==typeof value||"[object String]"===e.call(t)},s.isArray=Array.isArray||function(t){return"[object Array]"===e.call(t)},s.isNumber=function(t){return"number"==typeof t||"[object Number]"===e.call(t)},s.isBoolean=function(t){return!0===t||!1===t||"[object Boolean]"==e.call(t)},s.isDate=function(t){return"[object Date]"===e.call(t)},s.isValid=function(t){return null!=t&&t==t},s.isBuffer="function"==typeof Buffer&&Buffer.isBuffer||s.false,s.number=function(t){return null==t||""===t?null:+t},s.boolean=function(t){return null==t||""===t?null:"false"!==t&&!!t},s.date=function(t,e){var n=e||Date;return null==t||""===t?null:n.parse(t)},s.array=function(t){return null!=t?s.isArray(t)?t:[t]:[]},s.str=function(t){return s.isArray(t)?"["+t.map(s.str)+"]":s.isObject(t)||s.isString(t)?JSON.stringify(t).replace("\u2028","\\u2028").replace("\u2029","\\u2029"):t};var r=/\[(.*?)\]|[^.\[]+/g;function i(t,e){var n,r="";for(n=0;n<t;++n)r+=e;return r}function c(t,e,n){var r=0,a=t.split(u);return(t=n?(a=a.reverse()).filter(function(t){return(r+=t.length)<=e}).reverse():a.filter(function(t){return(r+=t.length)<=e})).length?t.join("").trim():a[0].slice(0,e)}s.field=function(t){return String(t).match(r).map(function(t){return"["!==t[0]?t:"'"!==t[1]&&'"'!==t[1]?t.slice(1,-1):t.slice(2,-2).replace(/\\(["'])/g,"$1")})},s.accessor=function(t){return null==t||s.isFunction(t)?t:s.namedfunc(t,Function("x","return x["+s.field(t).map(s.str).join("][")+"];"))},s.$=s.accessor,s.mutator=function(n){var r;return s.isString(n)&&1<(r=s.field(n)).length?function(t,e){for(var n=0;n<r.length-1;++n)t=t[r[n]];t[r[n]]=e}:function(t,e){t[n]=e}},s.$func=function(n,r){return function(e){e=s.$(e)||s.identity;var t=n+(s.name(e)?"_"+s.name(e):"");return s.namedfunc(t,function(t){return r(e(t))})}},s.$valid=s.$func("valid",s.isValid),s.$length=s.$func("length",s.length),s.$in=function(e,t){e=s.$(e);var n=s.isArray(t)?s.toMap(t):t;return function(t){return!!n[e(t)]}},s.comparator=function(u){var o=[];return void 0===u&&(u=[]),u=s.array(u).map(function(t){var e=1;return"-"===t[0]?(e=-1,t=t.slice(1)):"+"===t[0]&&(e=1,t=t.slice(1)),o.push(e),s.accessor(t)}),function(t,e){var n,r,a,i;for(n=0,r=u.length;n<r;++n)if(a=u[n],i=s.cmp(a(t),a(e)))return i*o[n];return 0}},s.cmp=function(t,e){return(t<e||null==t)&&null!=e?-1:(e<t||null==e)&&null!=t?1:(e=e instanceof Date?+e:e,(t=t instanceof Date?+t:t)!==t&&e==e?-1:e!=e&&t==t?1:0)},s.numcmp=function(t,e){return t-e},s.stablesort=function(t,a,i){var u=t.reduce(function(t,e,n){return t[i(e)]=n,t},{});return t.sort(function(t,e){var n=a(t),r=a(e);return n<r?-1:r<n?1:u[i(t)]-u[i(e)]}),t},s.permute=function(t){for(var e,n,r=t.length;r;)n=Math.floor(Math.random()*r--),e=t[r],t[r]=t[n],t[n]=e},s.pad=function(t,e,n,r){r=r||" ";var a=e-t.length;if(a<=0)return t;switch(n){case"left":return i(a,r)+t;case"middle":case"center":return i(Math.floor(a/2),r)+t+i(Math.ceil(a/2),r);default:return t+i(a,r)}},s.truncate=function(t,e,n,r,a){var i=t.length;if(i<=e)return t;a=void 0!==a?String(a):"…";var u=Math.max(0,e-a.length);switch(n){case"left":return a+(r?c(t,u,1):t.slice(i-u));case"middle":case"center":var o=Math.ceil(u/2),s=Math.floor(u/2);return(r?c(t,o):t.slice(0,o))+a+(r?c(t,s,1):t.slice(i-s));default:return(r?c(t,u):t.slice(0,u))+a}};var u=/([\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u2028\u2029\u3000\uFEFF])/}),e="datalib",n="1.9.3",r="JavaScript utilites for loading, summarizing and working with data.",a=["data","table","statistics","parse","csv","tsv","json","utility"],i={type:"git",url:"http://github.com/vega/datalib.git"},u={name:"Jeffrey Heer",url:"http://idl.cs.washington.edu"},o=[{name:"Michael Correll",url:"http://pages.cs.wisc.edu/~mcorrell/"},{name:"Ryan Russell",url:"https://github.com/RussellSprouts"},{name:"Matthew Conlen",url:"https://github.com/mathisonian"}],s="BSD-3-Clause",c={"d3-dsv":"0.1","d3-format":"0.4","d3-time":"0.1","d3-time-format":"0.2",request:"^2.67.0","sync-request":"^6.0.0","topojson-client":"^3.0.0"},l={chai:"^4.1.2",istanbul:"latest",jshint:"^2.9.5",mocha:"^5.2.0",rollup:"^0.62.0","rollup-plugin-commonjs":"^9.1.3","rollup-plugin-json":"^3.0.0","rollup-plugin-node-resolve":"^3.3.0","uglify-js":"^3.4.3"},f="src/index.js",h="datalib.min.js",d="datalib.min.js",m={deploy:"npm run test && scripts/deploy.sh",lint:"jshint src/",test:"npm run lint && TZ=America/Los_Angeles mocha --recursive test/",cover:"TZ=America/Los_Angeles istanbul cover _mocha -- --recursive test/",build:"rollup -c",postbuild:"uglifyjs datalib.js -c -m -o datalib.min.js"},g={buffer:!1,fs:!1,http:!1,request:!1,"sync-request":!1,url:!1},p={name:e,version:n,description:r,keywords:a,repository:i,author:u,contributors:o,license:s,dependencies:c,devDependencies:l,main:f,unpkg:h,jsdelivr:d,scripts:m,browser:g},y=Object.freeze({name:e,version:n,description:r,keywords:a,repository:i,author:u,contributors:o,license:s,dependencies:c,devDependencies:l,main:f,unpkg:h,jsdelivr:d,scripts:m,browser:g,default:p}),M={},b=/^([A-Za-z]+:)?\/\//,x="file://";function w(t,e){return w.loader(t,e)}function S(t){var e=t.responseType;return e&&"text"!==e?t.response:t.responseText}function D(t,e){return null!=t&&0===t.lastIndexOf(e,0)}w.loader=function(t,e){var n,r=e||function(t){throw t};try{n=w.sanitizeUrl(t)}catch(t){return void r(t)}if(n)return w.useXHR?w.xhr(n,t,e):D(n,x)?w.file(n.slice(x.length),t,e):n.indexOf("://")<0?w.file(n,t,e):w.http(n,t,e);r("Invalid URL: "+t.url)},w.sanitizeUrl=function(t){var e=t.url;if(!e&&t.file)return x+t.file;if(t.baseURL&&!b.test(e)&&(D(e,"/")||"/"===t.baseURL[t.baseURL.length-1]||(e="/"+e),e=t.baseURL+e),!w.useXHR&&D(e,"//")&&(e=(t.defaultProtocol||"http")+":"+e),t.domainWhiteList){var n,r;if(w.useXHR){var a=document.createElement("a");a.href=e,""===a.host&&(a.href=a.href),n=a.hostname.toLowerCase(),r=window.location.hostname}else{var i=M.parse(e);n=i.hostname,r=null}if(r!==n&&!t.domainWhiteList.some(function(t){var e=n.length-t.length;return t===n||1<e&&"."===n[e-1]&&n.lastIndexOf(t)===e}))throw"URL is not whitelisted: "+e}return e},w.xhr=function(t,e,n){var r=!!n,a=new XMLHttpRequest;function i(){var t=a.status;!t&&S(a)||200<=t&&t<300||304===t?n(null,a.responseText):n(a,null)}if("undefined"==typeof XDomainRequest||"withCredentials"in a||!/^(http(s)?:)?\/\//.test(t)||(a=new XDomainRequest),r&&("onload"in a?a.onload=a.onerror=i:a.onreadystatechange=function(){3<a.readyState&&i()}),a.open("GET",t,r),a.setRequestHeader){var u=v.extend({},w.headers,e.headers);for(var o in u)a.setRequestHeader(o,u[o])}if(a.send(),!r&&S(a))return a.responseText},w.file=function(t,e,n){var r=M;if(!n)return r.readFileSync(t,"utf8");r.readFile(t,n)},w.http=function(t,e,r){var n={url:t,encoding:null,gzip:!0,headers:v.extend({},w.headers,e.headers)};if(!r)return M("GET",t,n).getBody();M(n,function(t,e,n){t||200!==e.statusCode?(t=t||"Load failed with response code "+e.statusCode+".",r(t,null)):r(null,n)})},w.useXHR="undefined"!=typeof XMLHttpRequest,w.headers={};var _=w,T="__types__",C={boolean:v.boolean,integer:v.number,number:v.number,date:v.date,string:function(t){return null==t||""===t?null:t+""}},k={boolean:function(t){return"true"===t||"false"===t||v.isBoolean(t)},integer:function(t){return k.number(t)&&(t=+t)==~~t},number:function(t){return!isNaN(+t)&&!v.isDate(t)},date:function(t){return!isNaN(Date.parse(t))}};function A(t){return v.keys(t)}function j(t){return"["+t+"]"}function F(t,e){var n,r,a;if(t=v.array(t),e=v.$(e),t[T]&&(n=e(t[T]),v.isString(n)))return n;for(r=0,a=t.length;!v.isValid(n)&&r<a;++r)n=e?e(t[r]):t[r];return v.isDate(n)?"date":v.isNumber(n)?"number":v.isBoolean(n)?"boolean":v.isString(n)?"string":null}function $(t,e,n){var r,a,i;t=v.array(t),e=v.$(e);var u=["boolean","integer","number","date"];for(r=0;r<t.length;++r){for(i=e?e(t[r]):t[r],a=0;a<u.length;++a)n&&n.test(i)||!v.isValid(i)||k[u[a]](i)||(u.splice(a,1),a-=1);if(0===u.length)return"string"}return u[0]}F.annotation=function(t,e){if(!e)return t&&t[T]||null;t[T]=e},F.all=function(n,t){if(n.length){var r=t?v.identity:(t=A(n[0]),j);return t.reduce(function(t,e){return t[e]=F(n,r(e)),t},{})}},F.infer=$,F.inferAll=function(n,t,r){var a=t?v.identity:(t=A(n[0]),j);return t.reduce(function(t,e){return t[e]=$(n,a(e),r),t},{})},F.parsers=C;var E=F,q=t(function(t,e){!function(t){function e(t){return new n(t)}function s(t){return new Function("d","return {"+t.map(function(t,e){return JSON.stringify(t)+": d["+e+"]"}).join(",")+"}")}function n(i){var e=new RegExp('["'+i+"\n]"),h=i.charCodeAt(0);function n(t){return t.map(u).join(i)}function u(t){return e.test(t)?'"'+t.replace(/\"/g,'""')+'"':t}this.parse=function(t,i){var u,o,e=this.parseRows(t,function(t,e){if(u)return u(t,e-1);var n,r,a;o=t,u=i?(r=i,a=s(n=t),function(t,e){return r(a(t),e,n)}):s(t)});return e.columns=o,e},this.parseRows=function(a,t){var e,i,u={},o={},n=[],s=a.length,c=0,r=0;function l(){if(s<=c)return o;if(i)return i=!1,u;var t,e=c;if(34===a.charCodeAt(e)){for(var n=e;n++<s;)if(34===a.charCodeAt(n)){if(34!==a.charCodeAt(n+1))break;++n}return c=n+2,13===(t=a.charCodeAt(n+1))?(i=!0,10===a.charCodeAt(n+2)&&++c):10===t&&(i=!0),a.slice(e+1,n).replace(/""/g,'"')}for(;c<s;){var r=1;if(10===(t=a.charCodeAt(c++)))i=!0;else if(13===t)i=!0,10===a.charCodeAt(c)&&(++c,++r);else if(t!==h)continue;return a.slice(e,c-r)}return a.slice(e)}for(;(e=l())!==o;){for(var f=[];e!==u&&e!==o;)f.push(e),e=l();t&&null==(f=t(f,r++))||n.push(f)}return n},this.format=function(t,n){var e,r,a;return null==n&&(e=t,r=Object.create(null),a=[],e.forEach(function(t){for(var e in t)e in r||a.push(r[e]=e)}),n=a),[n.map(u).join(i)].concat(t.map(function(e){return n.map(function(t){return u(e[t])}).join(i)})).join("\n")},this.formatRows=function(t){return t.map(n).join("\n")}}e.prototype=n.prototype;var r=e(","),a=e("\t");t.version="0.1.14",t.dsv=e,t.csv=r,t.tsv=a}(e)});function U(t,e){if(t){var n=e.header;t=(n?n.join(e.delimiter)+"\n":"")+t}return q.dsv(e.delimiter).parse(t)}U.delimiter=function(t){var n={delimiter:t};return function(t,e){return U(t,e?v.extend(e,n):n)}};var L=U,Y=function(t,e){var n=v.isObject(t)&&!v.isBuffer(t)?t:JSON.parse(t);return e&&e.property&&(n=v.accessor(e.property)(n)),n};function H(t){return t}function z(t){if(null==t)return H;var i,u,o=t.scale[0],s=t.scale[1],c=t.translate[0],l=t.translate[1];return function(t,e){e||(i=u=0);var n=2,r=t.length,a=new Array(r);for(a[0]=(i+=t[0])*o+c,a[1]=(u+=t[1])*s+l;n<r;)a[n]=t[n],++n;return a}}function P(t){var e,a=z(t.transform),i=1/0,u=i,o=-i,s=-i;function n(t){(t=a(t))[0]<i&&(i=t[0]),t[0]>o&&(o=t[0]),t[1]<u&&(u=t[1]),t[1]>s&&(s=t[1])}function r(t){switch(t.type){case"GeometryCollection":t.geometries.forEach(r);break;case"Point":n(t.coordinates);break;case"MultiPoint":t.coordinates.forEach(n)}}for(e in t.arcs.forEach(function(t){for(var e,n=-1,r=t.length;++n<r;)(e=a(t[n],n))[0]<i&&(i=e[0]),e[0]>o&&(o=e[0]),e[1]<u&&(u=e[1]),e[1]>s&&(s=e[1])}),t.objects)r(t.objects[e]);return[i,u,o,s]}function O(t,e){var n=e.id,r=e.bbox,a=null==e.properties?{}:e.properties,i=N(t,e);return null==n&&null==r?{type:"Feature",properties:a,geometry:i}:null==r?{type:"Feature",id:n,properties:a,geometry:i}:{type:"Feature",id:n,bbox:r,properties:a,geometry:i}}function N(t,e){var i=z(t.transform),u=t.arcs;function a(t,e){e.length&&e.pop();for(var n=u[t<0?~t:t],r=0,a=n.length;r<a;++r)e.push(i(n[r],r));t<0&&function(t,e){for(var n,r=t.length,a=r-e;a<--r;)n=t[a],t[a++]=t[r],t[r]=n}(e,a)}function o(t){return i(t)}function s(t){for(var e=[],n=0,r=t.length;n<r;++n)a(t[n],e);return e.length<2&&e.push(e[0]),e}function n(t){for(var e=s(t);e.length<4;)e.push(e[0]);return e}function c(t){return t.map(n)}return function t(e){var n,r=e.type;switch(r){case"GeometryCollection":return{type:r,geometries:e.geometries.map(t)};case"Point":n=o(e.coordinates);break;case"MultiPoint":n=e.coordinates.map(o);break;case"LineString":n=s(e.arcs);break;case"MultiLineString":n=e.arcs.map(s);break;case"Polygon":n=c(e.arcs);break;case"MultiPolygon":n=e.arcs.map(c);break;default:return null}return{type:r,coordinates:n}}(e)}function J(s,a){var i={},c={},l={},u=[],o=-1;function t(t,e){for(var n in t){var r=t[n];delete e[r.start],delete r.start,delete r.end,r.forEach(function(t){i[t<0?~t:t]=1}),u.push(r)}}return a.forEach(function(t,e){var n,r=s.arcs[t<0?~t:t];r.length<3&&!r[1][0]&&!r[1][1]&&(n=a[++o],a[o]=t,a[e]=n)}),a.forEach(function(t){var e,n,r=function(t){var e,n=s.arcs[t<0?~t:t],r=n[0];s.transform?(e=[0,0],n.forEach(function(t){e[0]+=t[0],e[1]+=t[1]})):e=n[n.length-1];return t<0?[e,r]:[r,e]}(t),a=r[0],i=r[1];if(e=l[a])if(delete l[e.end],e.push(t),e.end=i,n=c[i]){delete c[n.start];var u=n===e?e:e.concat(n);c[u.start=e.start]=l[u.end=n.end]=u}else c[e.start]=l[e.end]=e;else if(e=c[i])if(delete c[e.start],e.unshift(t),e.start=a,n=l[a]){delete l[n.end];var o=n===e?e:n.concat(e);c[o.start=n.start]=l[o.end=e.end]=o}else c[e.start]=l[e.end]=e;else c[(e=[t]).start=a]=l[e.end=i]=e}),t(l,c),t(c,l),a.forEach(function(t){i[t<0?~t:t]||u.push([t])}),u}function X(t,e,n){var r,a,i;if(1<arguments.length)r=function(t,e,n){var r,a=[],i=[];function u(t){var e=t<0?~t:t;(i[e]||(i[e]=[])).push({i:t,g:r})}function o(t){t.forEach(u)}function s(t){t.forEach(o)}return function t(e){switch((r=e).type){case"GeometryCollection":e.geometries.forEach(t);break;case"LineString":o(e.arcs);break;case"MultiLineString":case"Polygon":s(e.arcs);break;case"MultiPolygon":e.arcs.forEach(s)}}(e),i.forEach(null==n?function(t){a.push(t[0].i)}:function(t){n(t[0].g,t[t.length-1].g)&&a.push(t[0].i)}),a}(0,e,n);else for(a=0,r=new Array(i=t.arcs.length);a<i;++a)r[a]=a;return{type:"MultiLineString",arcs:J(t,r)}}function B(o,t){var s={},n=[],r=[];function a(e){e.forEach(function(t){t.forEach(function(t){(s[t=t<0?~t:t]||(s[t]=[])).push(e)})}),n.push(e)}function c(t){return function(t){for(var e,n=-1,r=t.length,a=t[r-1],i=0;++n<r;)e=a,a=t[n],i+=e[0]*a[1]-e[1]*a[0];return Math.abs(i)}(N(o,{type:"Polygon",arcs:[t]}).coordinates[0])}return t.forEach(function t(e){switch(e.type){case"GeometryCollection":e.geometries.forEach(t);break;case"Polygon":a(e.arcs);break;case"MultiPolygon":e.arcs.forEach(a)}}),n.forEach(function(t){if(!t._){var e=[],n=[t];for(t._=1,r.push(e);t=n.pop();)e.push(t),t.forEach(function(t){t.forEach(function(t){s[t<0?~t:t].forEach(function(t){t._||(t._=1,n.push(t))})})})}}),n.forEach(function(t){delete t._}),{type:"MultiPolygon",arcs:r.map(function(t){var e,n=[];if(t.forEach(function(t){t.forEach(function(t){t.forEach(function(t){s[t<0?~t:t].length<2&&n.push(t)})})}),1<(e=(n=J(o,n)).length))for(var r,a,i=1,u=c(n[0]);i<e;++i)(r=c(n[i]))>u&&(a=n[0],n[0]=n[i],n[i]=a,u=r);return n}).filter(function(t){return 0<t.length})}}function R(t,e){for(var n=0,r=t.length;n<r;){var a=n+r>>>1;t[a]<e?n=a+1:r=a}return n}function V(t){if(null==t)return H;var o,s,c=t.scale[0],l=t.scale[1],f=t.translate[0],h=t.translate[1];return function(t,e){e||(o=s=0);var n=2,r=t.length,a=new Array(r),i=Math.round((t[0]-f)/c),u=Math.round((t[1]-h)/l);for(a[0]=i-o,o=i,a[1]=u-s,s=u;n<r;)a[n]=t[n],++n;return a}}var I=Object.freeze({bbox:P,feature:function(e,t){return"string"==typeof t&&(t=e.objects[t]),"GeometryCollection"===t.type?{type:"FeatureCollection",features:t.geometries.map(function(t){return O(e,t)})}:O(e,t)},mesh:function(t){return N(t,X.apply(this,arguments))},meshArcs:X,merge:function(t){return N(t,B.apply(this,arguments))},mergeArcs:B,neighbors:function(t){var r={},e=t.map(function(){return[]});function n(t,n){t.forEach(function(t){t<0&&(t=~t);var e=r[t];e?e.push(n):r[t]=[n]})}function a(t,e){t.forEach(function(t){n(t,e)})}var i={LineString:n,MultiLineString:a,Polygon:a,MultiPolygon:function(t,e){t.forEach(function(t){a(t,e)})}};for(var u in t.forEach(function e(t,n){"GeometryCollection"===t.type?t.geometries.forEach(function(t){e(t,n)}):t.type in i&&i[t.type](t.arcs,n)}),r)for(var o=r[u],s=o.length,c=0;c<s;++c)for(var l=c+1;l<s;++l){var f,h=o[c],d=o[l];(f=e[h])[u=R(f,d)]!==d&&f.splice(u,0,d),(f=e[d])[u=R(f,h)]!==h&&f.splice(u,0,h)}return e},quantize:function(t,e){if(t.transform)throw new Error("already quantized");if(e&&e.scale)o=t.bbox;else{if(!(2<=(n=Math.floor(e))))throw new Error("n must be ≥2");var n,r=(o=t.bbox||P(t))[0],a=o[1],i=o[2],u=o[3];e={scale:[i-r?(i-r)/(n-1):1,u-a?(u-a)/(n-1):1],translate:[r,a]}}var o,s,c=V(e),l=t.objects,f={};function h(t){return c(t)}function d(t){var e;switch(t.type){case"GeometryCollection":e={type:"GeometryCollection",geometries:t.geometries.map(d)};break;case"Point":e={type:"Point",coordinates:h(t.coordinates)};break;case"MultiPoint":e={type:"MultiPoint",coordinates:t.coordinates.map(h)};break;default:return t}return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),null!=t.properties&&(e.properties=t.properties),e}for(s in l)f[s]=d(l[s]);return{type:"Topology",bbox:o,transform:e,objects:f,arcs:t.arcs.map(function(t){var e,n=0,r=1,a=t.length,i=new Array(a);for(i[0]=c(t[0],0);++n<a;)((e=c(t[n],n))[0]||e[1])&&(i[r++]=e);return 1===r&&(i[r++]=[0,0]),i.length=r,i})}},transform:z,untransform:V}),W=function(t,e){var n=W.topojson;if(null==n)throw Error("TopoJSON library not loaded.");var r,a=Y(t,e);if(e&&e.feature){if(r=a.objects[e.feature])return n.feature(a,r).features;throw Error("Invalid TopoJSON object: "+e.feature)}if(e&&e.mesh){if(r=a.objects[e.mesh])return[n.mesh(a,a.objects[e.mesh])];throw Error("Invalid TopoJSON object: "+e.mesh)}throw Error("Missing TopoJSON feature or mesh parameter.")};W.topojson=I;var G,Z,K,Q,tt={json:Y,topojson:W,treejson:function(t,e){return n=Y(t,e),i=(r=e)&&r.children||"children",u=r&&r.parent||"parent",o=[],function t(e,n){e[u]=n,o.push(e);var r=e[i];if(r)for(var a=0;a<r.length;++a)t(r[a],e)}(n,null),o.root=n,o;var n,r,i,u,o},dsv:L,csv:L.delimiter(","),tsv:L.delimiter("\t")},et=t(function(t,e){!function(t){var o=new Date,s=new Date;function c(a,i,n,r){function u(t){return a(t=new Date(+t)),t}return(u.floor=u).round=function(t){var e=new Date(+t),n=new Date(t-1);return a(e),a(n),i(n,1),t-e<n-t?e:n},u.ceil=function(t){return a(t=new Date(t-1)),i(t,1),t},u.offset=function(t,e){return i(t=new Date(+t),null==e?1:Math.floor(e)),t},u.range=function(t,e,n){var r=[];if(t=new Date(t-1),e=new Date(+e),n=null==n?1:Math.floor(n),!(t<e&&0<n))return r;for(i(t,1),a(t),t<e&&r.push(new Date(+t));i(t,n),a(t),t<e;)r.push(new Date(+t));return r},u.filter=function(n){return c(function(t){for(;a(t),!n(t);)t.setTime(t-1)},function(t,e){for(;0<=--e;)for(;i(t,1),!n(t););})},n&&(u.count=function(t,e){return o.setTime(+t),s.setTime(+e),a(o),a(s),Math.floor(n(o,s))},u.every=function(e){return e=Math.floor(e),isFinite(e)&&0<e?1<e?u.filter(r?function(t){return r(t)%e==0}:function(t){return u.count(0,t)%e==0}):u:null}),u}var e=c(function(){},function(t,e){t.setTime(+t+e)},function(t,e){return e-t});e.every=function(n){return n=Math.floor(n),isFinite(n)&&0<n?1<n?c(function(t){t.setTime(Math.floor(t/n)*n)},function(t,e){t.setTime(+t+e*n)},function(t,e){return(e-t)/n}):e:null};var n=c(function(t){t.setMilliseconds(0)},function(t,e){t.setTime(+t+1e3*e)},function(t,e){return(e-t)/1e3},function(t){return t.getSeconds()}),r=c(function(t){t.setSeconds(0,0)},function(t,e){t.setTime(+t+6e4*e)},function(t,e){return(e-t)/6e4},function(t){return t.getMinutes()}),a=c(function(t){t.setMinutes(0,0,0)},function(t,e){t.setTime(+t+36e5*e)},function(t,e){return(e-t)/36e5},function(t){return t.getHours()}),i=c(function(t){t.setHours(0,0,0,0)},function(t,e){t.setDate(t.getDate()+e)},function(t,e){return(e-t-6e4*(e.getTimezoneOffset()-t.getTimezoneOffset()))/864e5},function(t){return t.getDate()-1});function u(e){return c(function(t){t.setHours(0,0,0,0),t.setDate(t.getDate()-(t.getDay()+7-e)%7)},function(t,e){t.setDate(t.getDate()+7*e)},function(t,e){return(e-t-6e4*(e.getTimezoneOffset()-t.getTimezoneOffset()))/6048e5})}var l=u(0),f=u(1),h=u(2),d=u(3),m=u(4),g=u(5),p=u(6),v=c(function(t){t.setHours(0,0,0,0),t.setDate(1)},function(t,e){t.setMonth(t.getMonth()+e)},function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())},function(t){return t.getMonth()}),y=c(function(t){t.setHours(0,0,0,0),t.setMonth(0,1)},function(t,e){t.setFullYear(t.getFullYear()+e)},function(t,e){return e.getFullYear()-t.getFullYear()},function(t){return t.getFullYear()}),M=c(function(t){t.setUTCMilliseconds(0)},function(t,e){t.setTime(+t+1e3*e)},function(t,e){return(e-t)/1e3},function(t){return t.getUTCSeconds()}),b=c(function(t){t.setUTCSeconds(0,0)},function(t,e){t.setTime(+t+6e4*e)},function(t,e){return(e-t)/6e4},function(t){return t.getUTCMinutes()}),x=c(function(t){t.setUTCMinutes(0,0,0)},function(t,e){t.setTime(+t+36e5*e)},function(t,e){return(e-t)/36e5},function(t){return t.getUTCHours()}),w=c(function(t){t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCDate(t.getUTCDate()+e)},function(t,e){return(e-t)/864e5},function(t){return t.getUTCDate()-1});function S(e){return c(function(t){t.setUTCHours(0,0,0,0),t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7)},function(t,e){t.setUTCDate(t.getUTCDate()+7*e)},function(t,e){return(e-t)/6048e5})}var D=S(0),_=S(1),T=S(2),C=S(3),k=S(4),A=S(5),j=S(6),F=c(function(t){t.setUTCHours(0,0,0,0),t.setUTCDate(1)},function(t,e){t.setUTCMonth(t.getUTCMonth()+e)},function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())},function(t){return t.getUTCMonth()}),$=c(function(t){t.setUTCHours(0,0,0,0),t.setUTCMonth(0,1)},function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)},function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()},function(t){return t.getUTCFullYear()}),E=e.range,q=n.range,U=r.range,L=a.range,Y=i.range,H=l.range,z=f.range,P=h.range,O=d.range,N=m.range,J=g.range,X=p.range,B=l.range,R=v.range,V=y.range,I=e,W=E,G=M.range,Z=b.range,K=x.range,Q=w.range,tt=D.range,et=_.range,nt=T.range,rt=C.range,at=k.range,it=A.range,ut=j.range,ot=D.range,st=F.range,ct=$.range;t.version="0.1.1",t.milliseconds=E,t.seconds=q,t.minutes=U,t.hours=L,t.days=Y,t.sundays=H,t.mondays=z,t.tuesdays=P,t.wednesdays=O,t.thursdays=N,t.fridays=J,t.saturdays=X,t.weeks=B,t.months=R,t.years=V,t.utcMillisecond=I,t.utcMilliseconds=W,t.utcSeconds=G,t.utcMinutes=Z,t.utcHours=K,t.utcDays=Q,t.utcSundays=tt,t.utcMondays=et,t.utcTuesdays=nt,t.utcWednesdays=rt,t.utcThursdays=at,t.utcFridays=it,t.utcSaturdays=ut,t.utcWeeks=ot,t.utcMonths=st,t.utcYears=ct,t.millisecond=e,t.second=n,t.minute=r,t.hour=a,t.day=i,t.sunday=l,t.monday=f,t.tuesday=h,t.wednesday=d,t.thursday=m,t.friday=g,t.saturday=p,t.week=l,t.month=v,t.year=y,t.utcSecond=M,t.utcMinute=b,t.utcHour=x,t.utcDay=w,t.utcSunday=D,t.utcMonday=_,t.utcTuesday=T,t.utcWednesday=C,t.utcThursday=k,t.utcFriday=A,t.utcSaturday=j,t.utcWeek=D,t.utcMonth=F,t.utcYear=$,t.interval=c}(e)}),nt=t(function(t,e){!function(t,n){function _(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function T(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function C(t){return{y:t,m:0,d:1,H:0,M:0,S:0,L:0}}function e(t){var r=t.dateTime,a=t.date,i=t.time,e=t.periods,n=t.days,u=t.shortDays,o=t.months,s=t.shortMonths,c=A(e),l=j(e),f=A(n),h=j(n),d=A(u),m=j(u),g=A(o),p=j(o),v=A(s),y=j(s),M={a:function(t){return u[t.getDay()]},A:function(t){return n[t.getDay()]},b:function(t){return s[t.getMonth()]},B:function(t){return o[t.getMonth()]},c:null,d:B,e:B,H:R,I:V,j:I,L:W,m:G,M:Z,p:function(t){return e[+(12<=t.getHours())]},S:K,U:Q,w:tt,W:et,x:null,X:null,y:nt,Y:rt,Z:at,"%":Mt},b={a:function(t){return u[t.getUTCDay()]},A:function(t){return n[t.getUTCDay()]},b:function(t){return s[t.getUTCMonth()]},B:function(t){return o[t.getUTCMonth()]},c:null,d:it,e:it,H:ut,I:ot,j:st,L:ct,m:lt,M:ft,p:function(t){return e[+(12<=t.getUTCHours())]},S:ht,U:dt,w:mt,W:gt,x:null,X:null,y:pt,Y:vt,Z:yt,"%":Mt},x={a:function(t,e,n){var r=d.exec(e.slice(n));return r?(t.w=m[r[0].toLowerCase()],n+r[0].length):-1},A:function(t,e,n){var r=f.exec(e.slice(n));return r?(t.w=h[r[0].toLowerCase()],n+r[0].length):-1},b:function(t,e,n){var r=v.exec(e.slice(n));return r?(t.m=y[r[0].toLowerCase()],n+r[0].length):-1},B:function(t,e,n){var r=g.exec(e.slice(n));return r?(t.m=p[r[0].toLowerCase()],n+r[0].length):-1},c:function(t,e,n){return D(t,r,e,n)},d:H,e:H,H:P,I:P,j:z,L:J,m:Y,M:O,p:function(t,e,n){var r=c.exec(e.slice(n));return r?(t.p=l[r[0].toLowerCase()],n+r[0].length):-1},S:N,U:$,w:F,W:E,x:function(t,e,n){return D(t,a,e,n)},X:function(t,e,n){return D(t,i,e,n)},y:U,Y:q,Z:L,"%":X};function w(s,c){return function(t){var e,n,r,a=[],i=-1,u=0,o=s.length;for(t instanceof Date||(t=new Date(+t));++i<o;)37===s.charCodeAt(i)&&(a.push(s.slice(u,i)),null!=(n=k[e=s.charAt(++i)])?e=s.charAt(++i):n="e"===e?" ":"0",(r=c[e])&&(e=r(t,n)),a.push(e),u=i+1);return a.push(s.slice(u,i)),a.join("")}}function S(a,i){return function(t){var e=C(1900),n=D(e,a,t+="",0);if(n!=t.length)return null;if("p"in e&&(e.H=e.H%12+12*e.p),"W"in e||"U"in e){"w"in e||(e.w="W"in e?1:0);var r="Z"in e?T(C(e.y)).getUTCDay():i(C(e.y)).getDay();e.m=0,e.d="W"in e?(e.w+6)%7+7*e.W-(r+5)%7:e.w+7*e.U-(r+6)%7}return"Z"in e?(e.H+=e.Z/100|0,e.M+=e.Z%100,T(e)):i(e)}}function D(t,e,n,r){for(var a,i,u=0,o=e.length,s=n.length;u<o;){if(s<=r)return-1;if(37===(a=e.charCodeAt(u++))){if(a=e.charAt(u++),!(i=x[a in k?e.charAt(u++):a])||(r=i(t,n,r))<0)return-1}else if(a!=n.charCodeAt(r++))return-1}return r}return M.x=w(a,M),M.X=w(i,M),M.c=w(r,M),b.x=w(a,b),b.X=w(i,b),b.c=w(r,b),{format:function(t){var e=w(t+="",M);return e.parse=S(t,_),e.toString=function(){return t},e},utcFormat:function(t){var e=w(t+="",b);return e.parse=S(t,T),e.toString=function(){return t},e}}}var k={"-":"",_:" ",0:"0"},a=/^\s*\d+/,i=/^%/,r=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;function u(t,e,n){var r=t<0?"-":"",a=(r?-t:t)+"",i=a.length;return r+(i<n?new Array(n-i+1).join(e)+a:a)}function o(t){return t.replace(r,"\\$&")}function A(t){return new RegExp("^(?:"+t.map(o).join("|")+")","i")}function j(t){for(var e={},n=-1,r=t.length;++n<r;)e[t[n].toLowerCase()]=n;return e}function F(t,e,n){var r=a.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function $(t,e,n){var r=a.exec(e.slice(n));return r?(t.U=+r[0],n+r[0].length):-1}function E(t,e,n){var r=a.exec(e.slice(n));return r?(t.W=+r[0],n+r[0].length):-1}function q(t,e,n){var r=a.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function U(t,e,n){var r=a.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(68<+r[0]?1900:2e3),n+r[0].length):-1}function L(t,e,n){var r=/^(Z)|([+-]\d\d)(?:\:?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Y(t,e,n){var r=a.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function H(t,e,n){var r=a.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function z(t,e,n){var r=a.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function P(t,e,n){var r=a.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function O(t,e,n){var r=a.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function N(t,e,n){var r=a.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function J(t,e,n){var r=a.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function X(t,e,n){var r=i.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function B(t,e){return u(t.getDate(),e,2)}function R(t,e){return u(t.getHours(),e,2)}function V(t,e){return u(t.getHours()%12||12,e,2)}function I(t,e){return u(1+n.day.count(n.year(t),t),e,3)}function W(t,e){return u(t.getMilliseconds(),e,3)}function G(t,e){return u(t.getMonth()+1,e,2)}function Z(t,e){return u(t.getMinutes(),e,2)}function K(t,e){return u(t.getSeconds(),e,2)}function Q(t,e){return u(n.sunday.count(n.year(t),t),e,2)}function tt(t){return t.getDay()}function et(t,e){return u(n.monday.count(n.year(t),t),e,2)}function nt(t,e){return u(t.getFullYear()%100,e,2)}function rt(t,e){return u(t.getFullYear()%1e4,e,4)}function at(t){var e=t.getTimezoneOffset();return(0<e?"-":(e*=-1,"+"))+u(e/60|0,"0",2)+u(e%60,"0",2)}function it(t,e){return u(t.getUTCDate(),e,2)}function ut(t,e){return u(t.getUTCHours(),e,2)}function ot(t,e){return u(t.getUTCHours()%12||12,e,2)}function st(t,e){return u(1+n.utcDay.count(n.utcYear(t),t),e,3)}function ct(t,e){return u(t.getUTCMilliseconds(),e,3)}function lt(t,e){return u(t.getUTCMonth()+1,e,2)}function ft(t,e){return u(t.getUTCMinutes(),e,2)}function ht(t,e){return u(t.getUTCSeconds(),e,2)}function dt(t,e){return u(n.utcSunday.count(n.utcYear(t),t),e,2)}function mt(t){return t.getUTCDay()}function gt(t,e){return u(n.utcMonday.count(n.utcYear(t),t),e,2)}function pt(t,e){return u(t.getUTCFullYear()%100,e,2)}function vt(t,e){return u(t.getUTCFullYear()%1e4,e,4)}function yt(){return"+0000"}function Mt(){return"%"}var s=e({dateTime:"%a %b %e %X %Y",date:"%m/%d/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}),c=e({dateTime:"%A, %e de %B de %Y, %X",date:"%d/%m/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],shortDays:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],months:["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],shortMonths:["gen.","febr.","març","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."]}),l=e({dateTime:"%A, der %e. %B %Y, %X",date:"%d.%m.%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],shortDays:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],shortMonths:["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"]}),f=e({dateTime:"%A, der %e. %B %Y, %X",date:"%d.%m.%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],shortDays:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],shortMonths:["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"]}),h=e({dateTime:"%a %b %e %X %Y",date:"%Y-%m-%d",time:"%H:%M:%S",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}),d=e({dateTime:"%a %e %b %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}),m=e({dateTime:"%A, %e de %B de %Y, %X",date:"%d/%m/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],shortDays:["dom","lun","mar","mié","jue","vie","sáb"],months:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],shortMonths:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"]}),g=e({dateTime:"%A, %-d. %Bta %Y klo %X",date:"%-d.%-m.%Y",time:"%H:%M:%S",periods:["a.m.","p.m."],days:["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"],shortDays:["Su","Ma","Ti","Ke","To","Pe","La"],months:["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"],shortMonths:["Tammi","Helmi","Maalis","Huhti","Touko","Kesä","Heinä","Elo","Syys","Loka","Marras","Joulu"]}),p=e({dateTime:"%a %e %b %Y %X",date:"%Y-%m-%d",time:"%H:%M:%S",periods:["",""],days:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],shortDays:["dim","lun","mar","mer","jeu","ven","sam"],months:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],shortMonths:["jan","fév","mar","avr","mai","jui","jul","aoû","sep","oct","nov","déc"]}),v=e({dateTime:"%A, le %e %B %Y, %X",date:"%d/%m/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],shortDays:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],months:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],shortMonths:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."]}),y=e({dateTime:"%A, %e ב%B %Y %X",date:"%d.%m.%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["ראשון","שני","שלישי","רביעי","חמישי","שישי","שבת"],shortDays:["א׳","ב׳","ג׳","ד׳","ה׳","ו׳","ש׳"],months:["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר"],shortMonths:["ינו׳","פבר׳","מרץ","אפר׳","מאי","יוני","יולי","אוג׳","ספט׳","אוק׳","נוב׳","דצמ׳"]}),M=e({dateTime:"%Y. %B %-e., %A %X",date:"%Y. %m. %d.",time:"%H:%M:%S",periods:["de.","du."],days:["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],shortDays:["V","H","K","Sze","Cs","P","Szo"],months:["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december"],shortMonths:["jan.","feb.","már.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec."]}),b=e({dateTime:"%A %e %B %Y, %X",date:"%d/%m/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],shortDays:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],shortMonths:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"]}),x=e({dateTime:"%Y %b %e %a %X",date:"%Y/%m/%d",time:"%H:%M:%S",periods:["AM","PM"],days:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],shortDays:["日","月","火","水","木","金","土"],months:["睦月","如月","弥生","卯月","皐月","水無月","文月","葉月","長月","神無月","霜月","師走"],shortMonths:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"]}),w=e({dateTime:"%Y/%m/%d %a %X",date:"%Y/%m/%d",time:"%H:%M:%S",periods:["오전","오후"],days:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],shortDays:["일","월","화","수","목","금","토"],months:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],shortMonths:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"]}),S=e({dateTime:"%A, %e %B %Y г. %X",date:"%d.%m.%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["недела","понеделник","вторник","среда","четврток","петок","сабота"],shortDays:["нед","пон","вто","сре","чет","пет","саб"],months:["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември"],shortMonths:["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек"]}),D=e({dateTime:"%a %e %B %Y %T",date:"%d-%m-%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],shortDays:["zo","ma","di","wo","do","vr","za"],months:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],shortMonths:["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec"]}),bt=e({dateTime:"%A, %e %B %Y, %X",date:"%d/%m/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Niedziela","Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota"],shortDays:["Niedz.","Pon.","Wt.","Śr.","Czw.","Pt.","Sob."],months:["Styczeń","Luty","Marzec","Kwiecień","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"],shortMonths:["Stycz.","Luty","Marz.","Kwie.","Maj","Czerw.","Lipc.","Sierp.","Wrz.","Paźdz.","Listop.","Grudz."]}),xt=e({dateTime:"%A, %e de %B de %Y. %X",date:"%d/%m/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"],shortDays:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],shortMonths:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"]}),wt=e({dateTime:"%A, %e %B %Y г. %X",date:"%d.%m.%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],shortDays:["вс","пн","вт","ср","чт","пт","сб"],months:["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"],shortMonths:["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек"]}),St=e({dateTime:"%A den %d %B %Y %X",date:"%Y-%m-%d",time:"%H:%M:%S",periods:["fm","em"],days:["Söndag","Måndag","Tisdag","Onsdag","Torsdag","Fredag","Lördag"],shortDays:["Sön","Mån","Tis","Ons","Tor","Fre","Lör"],months:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],shortMonths:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"]}),Dt=e({dateTime:"%a %b %e %X %Y",date:"%Y/%-m/%-d",time:"%H:%M:%S",periods:["上午","下午"],days:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],shortDays:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],shortMonths:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]}),_t="%Y-%m-%dT%H:%M:%S.%LZ";function Tt(t){return t.toISOString()}Tt.parse=function(t){var e=new Date(t);return isNaN(e)?null:e},Tt.toString=function(){return _t};var Ct=Date.prototype.toISOString&&+new Date("2000-01-01T00:00:00.000Z")?Tt:s.utcFormat(_t),kt=s.format,At=s.utcFormat;t.version="0.2.1",t.format=kt,t.utcFormat=At,t.locale=e,t.localeCaEs=c,t.localeDeCh=l,t.localeDeDe=f,t.localeEnCa=h,t.localeEnGb=d,t.localeEnUs=s,t.localeEsEs=m,t.localeFiFi=g,t.localeFrCa=p,t.localeFrFr=v,t.localeHeIl=y,t.localeHuHu=M,t.localeItIt=b,t.localeJaJp=x,t.localeKoKr=w,t.localeMkMk=S,t.localeNlNl=D,t.localePlPl=bt,t.localePtBr=xt,t.localeRuRu=wt,t.localeSvSe=St,t.localeZhCn=Dt,t.isoFormat=Ct}(e,et)}),rt=t(function(t,e){!function(t){function o(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,r=t.slice(0,n);return[1<r.length?r[0]+r.slice(2):r,+t.slice(n+1)]}function c(t){return(t=o(Math.abs(t)))?t[1]:NaN}var S;function n(t,e){var n=o(t,e);if(!n)return t+"";var r=n[0],a=n[1];return a<0?"0."+new Array(-a).join("0")+r:r.length>a+1?r.slice(0,a+1)+"."+r.slice(a+1):r+new Array(a-r.length+2).join("0")}var D={"":function(t,e){t:for(var n,r=(t=t.toPrecision(e)).length,a=1,i=-1;a<r;++a)switch(t[a]){case".":i=n=a;break;case"0":0===i&&(i=a),n=a;break;case"e":break t;default:0<i&&(i=0)}return 0<i?t.slice(0,i)+t.slice(n+1):t},"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.round(t).toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return n(100*t,e)},r:n,s:function(t,e){var n=o(t,e);if(!n)return t+"";var r=n[0],a=n[1],i=a-(S=3*Math.max(-8,Math.min(8,Math.floor(a/3))))+1,u=r.length;return i===u?r:u<i?r+new Array(i-u+1).join("0"):0<i?r.slice(0,i)+"."+r.slice(i):"0."+new Array(1-i).join("0")+o(t,Math.max(0,e+i-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}},f=/^(?:(.)?([<>=^]))?([+\-\( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?([a-z%])?$/i;function _(t){return new e(t)}function e(t){if(!(e=f.exec(t)))throw new Error("invalid format: "+t);var e,n=e[1]||" ",r=e[2]||">",a=e[3]||"-",i=e[4]||"",u=!!e[5],o=e[6]&&+e[6],s=!!e[7],c=e[8]&&+e[8].slice(1),l=e[9]||"";"n"===l?(s=!0,l="g"):D[l]||(l=""),(u||"0"===n&&"="===r)&&(u=!0,n="0",r="="),this.fill=n,this.align=r,this.sign=a,this.symbol=i,this.zero=u,this.width=o,this.comma=s,this.precision=c,this.type=l}e.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(null==this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(null==this.precision?"":"."+Math.max(0,0|this.precision))+this.type};var T=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function r(t){return t}function a(t){var o,s,x=t.grouping&&t.thousands?(o=t.grouping,s=t.thousands,function(t,e){for(var n=t.length,r=[],a=0,i=o[0],u=0;0<n&&0<i&&(e<u+i+1&&(i=Math.max(1,e-u)),r.push(t.substring(n-=i,n+i)),!((u+=i+1)>e));)i=o[a=(a+1)%o.length];return r.reverse().join(s)}):r,n=t.currency,w=t.decimal;function u(t){var c=(t=_(t)).fill,l=t.align,f=t.sign,e=t.symbol,h=t.zero,d=t.width,m=t.comma,g=t.precision,p=t.type,v="$"===e?n[0]:"#"===e&&/[boxX]/.test(p)?"0"+p.toLowerCase():"",y="$"===e?n[1]:/[%p]/.test(p)?"%":"",M=D[p],b=!p||/[defgprs%]/.test(p);return g=null==g?p?6:12:/[gprs]/.test(p)?Math.max(1,Math.min(21,g)):Math.max(0,Math.min(20,g)),function(t){var e=v,n=y;if("c"===p)n=M(t)+n,t="";else{var r=((t=+t)<0||1/t<0)&&(t*=-1,!0);if(t=M(t,g),r){var a=-1,i=t.length;for(r=!1;++a<i;)if(48<(u=t.charCodeAt(a))&&u<58||"x"===p&&96<u&&u<103||"X"===p&&64<u&&u<71){r=!0;break}}if(e=(r?"("===f?f:"-":"-"===f||"("===f?"":f)+e,n=n+("s"===p?T[8+S/3]:"")+(r&&"("===f?")":""),b)for(var u,a=-1,i=t.length;++a<i;)if((u=t.charCodeAt(a))<48||57<u){n=(46===u?w+t.slice(a+1):t.slice(a))+n,t=t.slice(0,a);break}}m&&!h&&(t=x(t,1/0));var o=e.length+t.length+n.length,s=o<d?new Array(d-o+1).join(c):"";switch(m&&h&&(t=x(s+t,s.length?d-n.length:1/0),s=""),l){case"<":return e+t+n+s;case"=":return e+s+t+n;case"^":return s.slice(0,o=s.length>>1)+e+t+n+s.slice(o)}return s+e+t+n}}return{format:u,formatPrefix:function(t,e){var n=u(((t=_(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(c(e)/3))),a=Math.pow(10,-r),i=T[8+r/3];return function(t){return n(a*t)+i}}}}var i=a({decimal:".",thousands:",",grouping:[3],currency:["$",""]}),u=a({decimal:",",thousands:".",grouping:[3],currency:[""," €"]}),s=a({decimal:",",thousands:" ",grouping:[3],currency:[""," Kč"]}),l=a({decimal:",",thousands:"'",grouping:[3],currency:[""," CHF"]}),h=a({decimal:",",thousands:".",grouping:[3],currency:[""," €"]}),d=a({decimal:".",thousands:",",grouping:[3],currency:["$",""]}),m=a({decimal:".",thousands:",",grouping:[3],currency:["£",""]}),g=a({decimal:",",thousands:".",grouping:[3],currency:[""," €"]}),p=a({decimal:",",thousands:" ",grouping:[3],currency:[""," €"]}),v=a({decimal:",",thousands:" ",grouping:[3],currency:["","$"]}),y=a({decimal:",",thousands:".",grouping:[3],currency:[""," €"]}),M=a({decimal:".",thousands:",",grouping:[3],currency:["₪",""]}),b=a({decimal:",",thousands:" ",grouping:[3],currency:[""," Ft"]}),x=a({decimal:",",thousands:".",grouping:[3],currency:["€",""]}),w=a({decimal:".",thousands:",",grouping:[3],currency:["","円"]}),C=a({decimal:".",thousands:",",grouping:[3],currency:["₩",""]}),k=a({decimal:",",thousands:".",grouping:[3],currency:[""," ден."]}),A=a({decimal:",",thousands:".",grouping:[3],currency:["€ ",""]}),j=a({decimal:",",thousands:".",grouping:[3],currency:["","zł"]}),F=a({decimal:",",thousands:".",grouping:[3],currency:["R$",""]}),$=a({decimal:",",thousands:" ",grouping:[3],currency:[""," руб."]}),E=a({decimal:",",thousands:" ",grouping:[3],currency:["","SEK"]}),q=a({decimal:".",thousands:",",grouping:[3],currency:["¥",""]}),U=i.format,L=i.formatPrefix;t.version="0.4.2",t.format=U,t.formatPrefix=L,t.locale=a,t.localeCaEs=u,t.localeCsCz=s,t.localeDeCh=l,t.localeDeDe=h,t.localeEnCa=d,t.localeEnGb=m,t.localeEnUs=i,t.localeEsEs=g,t.localeFiFi=p,t.localeFrCa=v,t.localeFrFr=y,t.localeHeIl=M,t.localeHuHu=b,t.localeItIt=x,t.localeJaJp=w,t.localeKoKr=C,t.localeMkMk=k,t.localeNlNl=A,t.localePlPl=j,t.localePtBr=F,t.localeRuRu=$,t.localeSvSe=E,t.localeZhCn=q,t.formatSpecifier=_,t.precisionFixed=function(t){return Math.max(0,-c(Math.abs(t)))},t.precisionPrefix=function(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(c(e)/3)))-c(Math.abs(t)))},t.precisionRound=function(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,c(e)-c(t))+1}}(e)}),at=rt,it=nt,ut=new Date(2e3,0,1),ot={numberLocale:ct,number:function(t){return at.format(t)},numberPrefix:function(t,e){return at.formatPrefix(t,e)},timeLocale:lt,time:function(t){return it.format(t)},utc:function(t){return it.utcFormat(t)},locale:function(t){ct(t),lt(t)},auto:{number:function(t){var e=at.format(".1f")(1)[1];null==t&&(t=",");null==(t=rt.formatSpecifier(t)).precision&&(t.precision=12);switch(t.type){case"%":t.precision-=2;break;case"e":t.precision-=1}return i=at.format(t),u=e,function(t){var e=i(t),n=e.indexOf(u);if(n<0)return e;for(var r=function(t,e){var n,r=t.lastIndexOf("e");if(0<r)return r;for(r=t.length;--r>e;)if(48<=(n=t.charCodeAt(r))&&n<=57)return r+1}(e,n),a=r<e.length?e.slice(r):"";--r>n;)if("0"!==e[r]){++r;break}return e.slice(0,r)+a};var i,u},linear:function(t,e,n){var r=function(t,e){t.length||(t=[0]);null==e&&(e=10);var n=t[0],r=t[t.length-1];r<n&&(u=r,r=n,n=u);var a=r-n||(e=1,n||r||1),i=Math.pow(10,Math.floor(Math.log(a/e)/Math.LN10)),u=a/e/i;ft<=u?i*=10:ht<=u?i*=5:dt<=u&&(i*=2);return[Math.ceil(n/i)*i,Math.floor(r/i)*i+i/2,i]}(t,e);null==n&&(n=",f");switch((n=rt.formatSpecifier(n)).type){case"s":var a=Math.max(Math.abs(r[0]),Math.abs(r[1]));return null==n.precision&&(n.precision=rt.precisionPrefix(r[2],a)),at.formatPrefix(n,a);case"":case"e":case"g":case"p":case"r":null==n.precision&&(n.precision=rt.precisionRound(r[2],Math.max(Math.abs(r[0]),Math.abs(r[1])))-("e"===n.type));break;case"f":case"%":null==n.precision&&(n.precision=rt.precisionFixed(r[2])-2*("%"===n.type))}return at.format(n)},time:function(){return t=it.format,n=t(".%L"),r=t(":%S"),a=t("%I:%M"),i=t("%I %p"),u=t("%a %d"),o=t("%b %d"),s=t("%B"),c=t("%Y"),function(t){var e=+t;return(et.second(t)<e?n:et.minute(t)<e?r:et.hour(t)<e?a:et.day(t)<e?i:et.month(t)<e?et.week(t)<e?u:o:et.year(t)<e?s:c)(t)};var t,n,r,a,i,u,o,s,c},utc:function(){return t=it.utcFormat,n=t(".%L"),r=t(":%S"),a=t("%I:%M"),i=t("%I %p"),u=t("%a %d"),o=t("%b %d"),s=t("%B"),c=t("%Y"),function(t){var e=+t;return(et.utcSecond(t)<e?n:et.utcMinute(t)<e?r:et.utcHour(t)<e?a:et.utcDay(t)<e?i:et.utcMonth(t)<e?et.utcWeek(t)<e?u:o:et.utcYear(t)<e?s:c)(t)};var t,n,r,a,i,u,o,s,c}},month:function(t,e){var n=e?Z||(Z=it.format("%b")):G||(G=it.format("%B"));return ut.setMonth(t),n(ut)},day:function(t,e){var n=e?Q||(Q=it.format("%a")):K||(K=it.format("%A"));return ut.setMonth(0),ut.setDate(2+t),n(ut)},quarter:function(t){return Math.floor(t.getMonth()/3)+1},utcQuarter:function(t){return Math.floor(t.getUTCMonth()/3)+1}};function st(t){return 4<t.length&&"locale"+(t[0].toUpperCase()+t[1].toLowerCase()+t[3].toUpperCase()+t[4].toLowerCase())}function ct(t){var e=v.isString(t)?rt[st(t)]:rt.locale(t);if(null==e)throw Error("Unrecognized locale: "+t);at=e}function lt(t){var e=v.isString(t)?nt[st(t)]:nt.locale(t);if(null==e)throw Error("Unrecognized locale: "+t);it=e,G=Z=K=Q=null}var ft=Math.sqrt(50),ht=Math.sqrt(10),dt=Math.sqrt(2);var mt=ot.time;function gt(t,e){var n=e&&e.type||"json";return t=tt[n](t,e),e&&e.parse&&function(t,r){var e,n,a,i,u,o,s=t.length;for(r="auto"===r?E.inferAll(t):v.duplicate(r),e=v.keys(r),n=e.map(function(t){var e=r[t];if(e&&0===e.indexOf("date:")){var n=e.split(/:(.+)?/,2)[1];if(!("'"===n[0]&&"'"===n[n.length-1]||'"'===n[0]&&'"'===n[n.length-1]))throw Error("Format pattern must be quoted: "+n);return n=n.slice(1,-1),n=mt(n),function(t){return n.parse(t)}}if(!E.parsers[e])throw Error("Illegal format pattern: "+t+":"+e);return E.parsers[e]}),i=0,o=e.length;i<s;++i)for(a=t[i],u=0;u<o;++u)a[e[u]]=n[u](a[e[u]]);E.annotation(t,r)}(t,e.parse),t}gt.formats=tt;var pt=gt,vt=t(function(t){var s=t.exports;s.repeat=function(t,e){var n,r=Array(e);for(n=0;n<e;++n)r[n]=t;return r},s.zeros=function(t){return s.repeat(0,t)},s.range=function(t,e,n){if(arguments.length<3&&(n=1,arguments.length<2&&(e=t,t=0)),(e-t)/n==1/0)throw new Error("Infinite range");var r,a=[],i=-1;if(n<0)for(;(r=t+n*++