qr-code

!function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache} !function ( t, n ) {"object" = = typeof ( t.flubber2 = {} ) } ( this, function ( t ) {"use strict";function n ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[1]*i[0]-n[0]*i[1];return a/2}function o/h]}function function #123;switch ( 32|t ) {case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}function o ( t ) {return 97 = = ( 32|t ) }function s ( t ) {return t> = 48&&t< = 57}function h ( t ) {return ( t ) {var n = t.path.charCodeAt ( t.index ) ;return 48 = = = n? ( t.param = 0, void t.index++ ) :49 = = = n? ( t.param = 1, void t.index++ ) :void ( t.err = "SvgPath: arc flag can be 0 or 1 only ( at pos "+t.index+" ) " ) }function l ( t ) {var n, e = t.index, r = e, i = t.max, a = !1, o = !1, h = !1, u = !1;if ( r> = i ) return void ( t.err = "SvgPath: missed param ( at err = "SvgPath: param should start with 0..9 or `.` ( at quot;SvgPath: numbers started with `0` such as `09` are illegal ( at pos ( r ) ) ; ) r++, h = !0;n = r<i?t.path.charCodeAt ( r ) :0}if ( 101 = = = n||69 = = = n ) {if ( u&&!o&&!h ) return void ( t.err = "SvgPath: invalid float exponent ( at err = "SvgPath: invalid float exponent ( at #123;var ( n ) ) return void ( t.err = "SvgPath: bad command "+t.path[t.index]+" ( at *n[0]+t[2]*n[1], t[1]*n[0]+t[3]*n[1], t[0]*n[2]+t[2]*n[3], t[1]*n[2]+t[3]*n[3], t[0]*n[4]+t[2]*n[5]+t[4], t[1]*n[4]+t[3]*n[5]+t[5]]}function x ( ) {if ( ! ( this instanceof x ) ) return new x;this.queue = [], this.cache = null}function y ( t, n, e, r ) {var return[r, i, r-i*e, i+r*e, a+o*e, o-a*e, a, o]}function M ( t, n, e ) {if ( ! ( this instanceof M ) ) return new M ( t, n, e ) ;this.rx = t, this.ry = n, this.ax = e}function w ( t ) {if ( ! ( this instanceof w ) ) return new w ( t ) ;var n = En ( t ) ;this.segments = n.segments, this.err = n.err, this.__stack = []}function b ( t ) {var n = [];return t.replace ( Dn, function ( t, e, r ) {var quot;L" ) ;r.length> = 0; ) {if ( r.length = = = On[i] ) return r.unshift ( e ) , n.push ( r ) ;if ( r.length<On[i] ) throw new Error ( "malformed path data" ) ;n.push ( [e].concat ( r.splice ( 0, On[i] ) ) ) }} ) , n}function L ( t ) {var n = t.match ( Hn ) ;return n?n.map ( Number ) :[]}function A ( t, n, e, r, i, a, o, s ) {return #125;function P ( t, n, e, r, i ) {for ( var nbsp;+e*e*e*n[3]}}function C ( t, n, e ) {void ( Math.abs ( ( l+Math.sqrt ( l*l+p ) ) / ( c+Math.sqrt ( c*c+p ) ) ) ) ) }function Z ( t, n ) {return Un[t][n]}function T ( t, n, e ) {var r, i, a, o = e.length-1;if ( 0 = = = o ) return 0;if ( 0 = = = t ) {for ( i = 0, a = 0;a< = o;a++ ) i+ = Z ( o, a ) *Math.pow ( 1-n, o-a ) *Math.pow ( n, a ) *e[a];return i}for ( r = new Array ( o ) , a = 0;a<o;a++ ) r[a] = o* ( e[a+1]-e[a] ) ;return T ( t-1, n, r ) }function F ( t, n, e ) {var r = T ( 1, e, t ) , i = T ( 1, e, n ) , a = r*r+i*i;return Math.sqrt ( a ) }function z ( t, n, e ) {var r, i, a, o;void 0 = = = e&& ( e = 1 ) ;for ( r = e/2, i = 0, a = 0;a<20;a++ ) o = r*Nn[20][a]+r, i+ = Qn[20][a]*F ( t, n, o ) ;return r*i}function j ( t, n, e, r ) {var + = y;return g.map ( function ( t ) {for ( var n = 0;n<t.length;n+ = 2 ) {var i = t[n+0], a = t[n+1];i* = e, a* = r;var o = c*i-u*a, s = u*i+c*a;t[n+0] = o+v[0], t[n+1] = s+v[1]}return t} ) }function Y ( t, n, e, r, i, a, o, s, h ) {return new G ( t, n, e, r, i, a, o, s, h ) }function G ( t, n, e, r, i, a, o, s, h ) {var ( n ) } ) , this.length = u, this.partialLengths = c, this.curves = f}function O ( t, n, e, r ) {return new D ( t, n, e, r ) }function D ( t, n, e, r ) {this.x0 = t, this.x1 = n, this.y0 = e, this.y1 = r}function H ( t ) {function n ( t ) {if ( !t ) return [c][2], s[c][3], s[c][4], s[c][5], h[0]+s[c][6], h[1]+s[c][7] ) , e+ = a.getTotalLength ( ) , h = [h[0]+s[c][6], h[1]+s[c][7]], i.push ( a ) ) , r.push ( e ) ;return n}var e = 0, r = [], i = [];n.getTotalLength = function ( ) {return e}, n.getPointAtLength = function ( t ) {var #125;, n.getPropertiesAtLength = function ( t ) {var n = a ( t ) ;return n--;return n++, {fraction:t-r[n-1], i:n}};return n ( t ) }function #125;function U ( t, n ) {return N ( t, n ) <1e-9}function R ( t, n, e ) {var r = t.map ( function ( t, e ) {return B ( t, n[e] ) } ) ;return function ( t ) {var n = r.map ( function ( n ) {return n ( t ) } ) ;return e?nt ( n ) :n}}function B ( t, n ) {return function ( e ) {return t.map ( function ( t, r ) {return t+e* ( n[r]-t ) } ) }}function W ( t ) {return"number" = = typeof t&&isFinite ( t ) }function J ( t ) {return K ( t ) ?e ( t ) :[ ( t[0][0]+t[t.length-1][0] ) /2, ( t[0][1]+t[t.length-1][1] ) /2]}function K ( t ) {for ( var #123;return new Gn ( t ) .abs ( ) }function return t} ) }function nt ( t ) {return"M"+t.join ( "L" ) +"Z"}function et ( t ) {return tt ( $ ( t ) ) }function rt ( t, n ) {var e = $ ( t ) ;return it ( e ) ||at ( e, n ) }function #123;var e, r, i = tt ( t ) [0], a = [], o = 3;if ( !i ) throw nbsp;n.setAttributeNS ( null, "d", t ) , n}catch ( t ) {}return H ( t ) }function st ( t, n ) {for ( var + = c, a++ ) }}function ht ( t, n ) {void 0 = = = n&& ( n = 1/0 ) ;for ( var e = 0;e<t.length;e++ ) for ( var r = t[e], i = e = = = t.length-1?t[0]:t[e+1];N ( r, i ) >n; ) i = Q ( r, i, .5 ) , t.splice ( e+1, 0, i ) }function ut ( t, e ) {var r, i, a;if ( "string" = = typeof t ) {var o = rt ( t, e ) ;t = o.ring, a = o.skipBisect}else if ( !Array.isArray ( t ) ) throw new TypeError ( Bn ) ;if ( r = t.slice ( 0 ) , !ct ( r ) ) throw new TypeError ( Bn ) ;return function ct ( t ) {return amp;& ( i = t.splice ( 0, e ) , t.splice.apply ( t, [t.length, 0].concat ( i ) ) ) }function lt ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = ut ( t, r ) , o = ut ( n, r ) , s = pt ( a, o, i ) ;return!i||"string"! = typeof t&&"string"! = typeof n?s:function ( e ) {return e<1e-4&&"string" = = typeof t?t:1-e<1e-4&&"string" = = typeof n?n:s ( e ) }}function pt ( t, n, e ) {var 1/p:0}return yt ( a, o, e, s, h, p ) , o}function o&&Ft ( o, o.next ) && ( Dt ( o ) , o = o.next ) , o}function xt ( t, n ) {if ( !t ) return t;n|| ( n = t ) ;var r! = = n ) ;return n}function e, r, i, a, 1 ) ;break}}}function dt ( t ) {var = 0 ) return!1;i = i.next}return!0}function mt ( t, n, e, r ) {var #125;return!0}function Mt ( t, n, e ) {var r = t;do{var r = t = a ) , r = r.next}while ( r! = = t ) ;return xt ( r ) }function wt ( t, n, e, r, i, a ) {var o = t;do{for ( var s = o.next.next;s! = = o.prev; ) {if ( o.i! = = s.i&&Zt ( o, s ) ) {var h = Gt ( o, s ) ;return o = xt ( o, o.next ) , h = xt ( h, h.next ) , yt ( o, n, e, r, i, a ) , void yt ( h, n, e, r, i, a ) }s = s.next}o = o.next}while ( o! = = t ) }function bt ( t, n, e, r ) {var i = 0;i<u.length;i++ ) e = At ( u[i], e ) , e = xt ( e, e.next ) ;return e}function Lt ( t, n ) {return t.x-n.x}function At ( t, n ) {var e = kt ( t, n ) ;if ( !e ) return n;var r = Gt ( e, t ) , i = xt ( e, e.next ) ;return xt ( r, r.next ) , n = = = e?i:n}function #125;r = r.next}while ( r! = = n ) ;if ( !e ) return null;if ( i = = = o ) return function qt ( t, n ) {return Tt ( t.prev, t, n.prev ) <0&&Tt ( n.next, t, t.next ) <0}function nextZ = null, u* = 2}while ( o>1 ) ;return t}function x ) - ( n.x-t.x ) * ( e.y-n.y ) }function Ft ( t, n ) {return t.x = = = n.x&&t.y = = = n.y}function amp;n.y< = Math.max ( t.y, e.y ) &&n.y> = Math.min ( t.y, e.y ) }function It ( t ) {return t>0?1:t<0?-1:0}function ( t, t.next, n ) <0}function Yt ( t, n ) {var e = e.next}while ( e! = = t ) ;return r}function Gt ( t, n ) {var e = new Ot ( t, n, e, r ) {var i = new next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1}function Nt ( t, n, e, r ) {for ( var i = 0, a = n, o = e-r;a<e;a+ = r ) i+ = ( t[o]-t[a] ) * ( t[a+1]+t[o+1] ) , o = a;return i}function Qt ( t ) {return t}function Ut ( t ) {if ( null = = t ) return Qt;var n, e, r = t.scale[0], i = t.scale[1], a = t.translate[0], o = t.translate[1];return function ( t, s ) {s|| ( n = e = 0 ) ;var h = 2, u = t.length, c = new Array ( u ) ;for ( c[0] = ( n+ = t[0] ) *r+a, c[1] = ( e+ = t[1] ) *i+o;h<u; ) c[h] = t[h], ++h;return c}}function #125; ) }:Wt ( t, n ) }function geometry:a}}function Jt ( t, n ) {function return h ( t ) }function i ( t ) {for ( var n = [], r = 0, i = t.length;r<i;++r ) e ( t[r], n ) ;return n.length<2&&n.push ( n[0] ) , n}function a ( t ) {for ( var n = i ( t ) ;n.length<4; ) n.push ( n[0] ) ;return n}function o ( t ) {return t.map ( a ) }function #125;}var h = Ut ( t.transform ) , u = t.arcs;return s ( n ) }function Kt ( t, n ) {function e ( n ) {var function r ( t, n ) {for ( var e in t ) {var r = t[e];delete n[r.start], delete return ( function ( t ) {var n, r, i = e ( t ) , s = i[0], h = i[1];if ( n = o[s] ) if ( delete o[n.end], n.push ( t ) , n.end = h, r = a[h] ) {delete a[r.start];var u = r = = = n?n:n.concat ( r ) ;a[u.start = n.start] = o[u.end = r.end] = u}else a[n.start] = o[n.end] = n;else if ( n = a[h] ) if ( delete a[n.start], n.unshift ( t ) , n.start = s, r = o[s] ) {delete o[r.end];var c = r = = = n?n:r.concat ( n ) ;a[c.start = r.start] = o[c.end = n.end] = c}else nbsp;$t ( t ) {for ( var n, e = -1, r = t.length, i = t[r-1], a = 0;++e<r; ) n = i, i = t[e], a+ = n[0]*i[1]-n[1]*i[0];return Math.abs ( a ) }function ( t ) } ) } ) , o.push ( t ) }function i ( n ) {return $t ( Jt ( t, {type:"Polygon", arcs:[n]} ) .coordinates[0] ) }var a = {}, o = [], s = [];return [h], r[h] = s, u = o ) ;return r} ) .filter ( function ( t ) {return t.length>0} ) }}function nn ( t, n ) {for ( var e = 0, r = t.length;e<r; ) {var i = e+r>>>1;t[i]<n?e = i+1:r = i}return e}function type in o&&o[t.type] ( t.arcs, n ) }var ( t, n ) } ) }};t.forEach ( r ) ;for ( var s in i ) for ( var h = i[s], u = h.length, c = 0;c<u;++c ) for ( var #125;function rn ( t, n ) {return ( null = = r&& ( r = 0 ) , null = = i&& ( i = n.length ) ;r<i; ) {var a = r+i>>>1;t ( n[a], e ) >0?i = a:r = a+1}return r}}}function on ( t ) {return function ( n, e ) {return rn ( t ( n ) , e ) }}function arcs:[]};return t.forEach ( function ( t ) {var a = [];t.forEach ( function ( t, n ) {var o = t[0]<t[1]?t.join ( ", " ) :t[1]+", "+t[0], s = t.map ( function ( t ) {return e[t]} ) ;o function length ) throw new RangeError ( "Can't collapse topology into "+n+" function un ( t, n ) {return hn ( sn ( cn ( t ) , t ) , n ) }function n[r+2]], [n[r+2], n[r]]] ) ;return e}function fn ( t, n ) {if ( t.length>8 ) return t.map ( function ( t, n ) {return n} ) ;var e = t.map ( function ( t ) {return n.map ( function ( n ) {return pn ( t, n ) } ) } ) ;return ln ( t, n, e ) }function ln ( t, n, e ) {function r ( t, n, o ) {void 0 = = = n&& ( n = [] ) , void 0 = = = o&& ( o = 0 ) ;for ( var s = 0;s<t.length;s++ ) {var var i = 1/0, a = t.map ( function ( t, n ) {return n} ) ;return r ( a ) , a}function pn ( t, n ) {var e = N ( J ( t ) , J ( n ) ) ;return e*e}function vn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = ut ( t, r ) ;o.length<n.length+2&&st ( o, n.length+2-o.length ) ;var s, h = un ( o, n.length ) , u = n.map ( function ( t ) {return ut ( t, r ) } ) , c = "string" = = typeof t&&t;return function gn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;void 0 = = = a&& ( a = !1 ) ;var o = vn ( n, t, {maxSegmentLength:r, string:i, single:a} ) ;return a?function ( t ) {return o ( 1-t ) }:o.map ( function ( t ) {return function ( n ) {return t ( 1-n ) }} ) }function xn ( t, n, e ) {void 0 = = = e&& ( e = {} ) ;var r = e.maxSegmentLength;void 0 = = = r&& ( r = 10 ) ;var i = e.string;void 0 = = = i&& ( i = !0 ) ;var a = e.single;if ( void 0 = = = a&& ( a = !1 ) , !Array.isArray ( t ) ||!Array.isArray ( n ) ||t.length! = = n.length||!t.length ) throw new TypeError ( Wn ) ;var o, s, h = function ( t ) {return #125;function yn ( t, n, e ) {void isArray ( a ) && ( a = a.join ( " " ) ) , Array.isArray ( o ) && ( o = o.join ( " " ) ) ) , i ) {var c = r?function ( t ) {return u.map ( function ( n ) {return n ( t ) } ) .join ( " " ) }:function ( t ) {return u.map ( function ( n ) {return = = typeof t&&t} ) :[], u.map ( function ( t, n ) {return a[n]||o[n]?function ( e ) {return e<1e-4&&a[n]||1-e<1e-4&&o[n]||t ( e ) }:t} ) ) :u}function dn ( t, n, e, r, i ) {return bn ( Ln ( t, n, e ) , r, qn ( t, n, e ) , 2*Math.PI*e, i ) }function mn ( t, n, e, r, i ) {var a = dn ( n, e, r, t, i ) ;return function ( t ) {return a ( 1-t ) }}function Mn ( t, n, e, r, i, a ) {return bn ( An ( t, n, e, r ) , i, _n ( t, n, e, r ) , 2*e+2*r, a ) }function wn ( t, n, e, r, i, a ) {var o = Mn ( n, e, r, i, t, a ) ;return function ( t ) {return o ( 1-t ) }}function bn ( t, n, e, r, i ) {void 0 = = = i&& ( i = {} ) ;var a = i.maxSegmentLength;void 0 = = = a&& ( a = 10 ) ;var o = i.string;void return t<1e-4?e:h ( t ) }:h}function Ln ( t, n, e ) {return function ( i ) {var a = J ( i ) , o = r ( i.concat ( [i[0]] ) ) , s = Math.atan2 ( i[0][1]-a[1], i[0][0]-a[0] ) , h = 0;return i.map ( function ( r, a ) {var u;return a&& ( h+ = N ( r, i[a-1] ) ) , u = s+2*Math.PI* ( o?h/o:a/i.length ) , [Math.cos ( u ) *e+t, Math.sin ( u ) *e+n]} ) }}function An ( t, n, e, i ) {return function ( a ) {var o = J ( a ) , s = r ( a.concat ( [a[0]] ) ) , h = Math.atan2 ( a[0][1]-o[1], a[0][0]-o[0] ) , u = 0;h<0&& ( h = 2*Math.PI+h ) ;var c = h/ ( 2*Math.PI ) ;return #123;var var #123;var n = new lt;0? ( n.err = "SvgPath: string should start with `M` #123;var t = this;if ( this.cache ) return this.cache;if ( !this.queue.length ) return this.cache = [1, 0, 0, 1, 0, 0], this.cache;if ( this.cache = this.queue[0], 1 = = = this.queue.length ) return this.cache;for ( var n = 1;n<this.queue.length;n++ ) t.cache = g ( t.cache, t.queue[n] ) ;return this.cache}

Hannes
Hannes
Hannes
H
H
H
a
a
a
t
t
t
t
t
t
e
e
e
n
n
n
b
b
b
a
a
a
c
c
c
h
h
h

thats me. I've recently finished my computer science degree by writing my master thesis @ Freie Universität Berlin and developed some love for builing (Web-)Apps. But cryptography and more importantly how to break them using Quantum-Computing is my current interest.

Education

  • 2017

    @ Werner von Siemens Gymnasium Berlin

    With primary focus on mathmatics and physics, with 15points (the best) in computer science ;)


  • 2020

    @ Freie Universität Berlin

    I wrote my bachelor thesis on improving useability of an email client.


  • 2023

    @ Freie Universität Berlin

    I've not got my certificate yet, but i've already finished all my classes and my masters thesis called "Improved linear Cryptanalysis on Quantum Computers" with a 1.0, therefor I expect to graduate with a 1.4 very soon.


Experience

  • 2019

    2020

    @ Whats2doo / Leithold

    Designed and built a new landing page for the company website, mostly using PHP and plain JS.

    Helping to build a new web app for the company using Nuxt.js (Vue.js) and MongoDB, though to be honest, i forgot most of that already..


  • 2021

    2024

    @ Fraunhofer AISEC

    Did a lot of research regarding quantum computing and quantum algorithms with a focus on quantum cryptanalysis, code wasn't really the main part of the job, but i did a bunch of python using IBM's qiskit framework.

    Worked on multiple large projects including QACI, BayQS and PoQuID


  • 2021

    2024

    @ Mastbau FN GmbH

    Designed and built an internal application for managing the company's projects, using primarily Flutter.


  • soon

    YOU?

    I am always looking for new opportunities. If you have a position that you think I would be a good fit for, please feel free to contact me.


Projects

The following is only a small selection, for a more complete picture check my Github and Play-Store entries.

passcheck preview

Password Checker

A

very small
Progressive Web App made with Svelte, that evaluates how secure a given password is. Creating this or something similar takes me around
3 days

more info

vibration preview

Haptic Patterns

A

small
Cross-Platform App made with Flutter, that lets you create custom vibration patterns. Creating this or something similar takes me around
1-2 weeks

more info

inspector preview

Inspector

A

complex
android app, made for internal usage by Mastbau FN, which lets them inspect and manage their construction sites. Creating this took
over 1 year
as requirements changed over time. Im still working on and maintaining this project.

more info

carii preview

Carii

A

very complex
multi-platform app, whose exact purpose is still a secret. Finishing this DiPA (digitale Pflegeanwendung) will take
multiple years
and a small team.

more info

Skills

Skills

Git

GitHub

TypeScript

Python

Flutter

Supabase

Svelte

Android

Bash

Sass

Linux

PostgreSQL

LaTeX

Rust

VS Code

CAD (f360)

Docker

Nix

Of course this is also just a selection of tools, frameworks and languages I am quite familiar with and deemed worth mentioning. If you are interested in more niche technologies I have worked with, feel free to contact me. There are is also a lot of stuff i have touched on a few times that would need some refreshing, but I am always eager to learn new things.

Contact

Impressum

Hannepps by:


Hannes Hattenbach

Im Mühlenfelde 7, 14167 Berlin


impressum@h-h.win


USt-Nr: DE364767306