/* * Kendo UI v2015.3.1111 (http://www.telerik.com/kendo-ui) * Copyright 2015 Telerik AD. All rights reserved. * * Kendo UI commercial licenses may be obtained at * http://www.telerik.com/purchase/license-agreement/kendo-ui-complete * If you do not own a commercial license, this file shall be governed by the trial license terms. */ !function(e,define){define(["./kendo.data.min","./kendo.userevents.min","./kendo.tooltip.min","./kendo.mobile.scroller.min","./kendo.draganddrop.min","./kendo.drawing.min","./kendo.core.min"],e)}(function(){return function(){!function(e,t){var n,i=Math,o=i.abs,r=i.atan,s=i.atan2,a=i.cos,l=i.max,c=i.min,u=i.sin,h=i.tan,d=window.kendo,f=d.Class,p=d.dataviz,g=d.deepExtend,m=d.util,v=m.defined,_=m.deg,y=m.rad,w=m.round,b=m.sqr,x=m.valueOrDefault,k=f.extend({init:function(e,t){1===arguments.length?(this.lat=e[0],this.lng=e[1]):(this.lat=e,this.lng=t)},DISTANCE_ITERATIONS:100,DISTANCE_CONVERGENCE:1e-12,DISTANCE_PRECISION:2,FORMAT:"{0:N6},{1:N6}",toArray:function(){return[this.lat,this.lng]},equals:function(e){return e&&e.lat===this.lat&&e.lng===this.lng},clone:function(){return new k(this.lat,this.lng)},round:function(e){return this.lng=w(this.lng,e),this.lat=w(this.lat,e),this},wrap:function(){return this.lng=this.lng%180,this.lat=this.lat%90,this},distanceTo:function(e,t){return this.greatCircleTo(e,t).distance},destination:function(e,t,n){var o,r,l,c,h;return t=y(t),n=n||p.map.datums.WGS84,o=y(this.lat),r=y(this.lng),l=e/d.dataviz.map.datums.WGS84.a,c=i.asin(u(o)*a(l)+a(o)*u(l)*a(t)),h=r+s(u(t)*u(l)*a(o),a(l)-u(o)*u(c)),new k(_(c),_(h))},greatCircleTo:function(e,t){var n,l,c,d,f,g,m,v,x,C,S,T,A,D,M,E,P,I,R,B,z,L,F,O,N,H,V,U,W;if(e=k.create(e),t=t||p.map.datums.WGS84,!e||this.clone().round(8).equals(e.clone().round(8)))return{distance:0,azimuthFrom:0,azimuthTo:0};for(n=t.a,l=t.b,c=t.f,d=y(e.lng-this.lng),f=r((1-c)*h(y(this.lat))),g=u(f),m=a(f),v=r((1-c)*h(y(e.lat))),x=u(v),C=a(v),S=d,A=this.DISTANCE_ITERATIONS,D=!1;!D&&A-->0;)M=u(S),E=a(S),P=i.sqrt(b(C*M)+b(m*x-g*C*E)),R=g*x+m*C*E,z=s(P,R),L=m*C*M/P,I=1-b(L),B=0,0!==I&&(B=R-2*g*x/I),T=S,F=c/16*I*(4+c*(4-3*I)),S=d+(1-F)*c*L*(z+F*P*(B+F*R*(-1+2*b(B)))),D=o(S-T)<=this.DISTANCE_CONVERGENCE;return O=I*(b(n)-b(l))/b(l),N=1+O/16384*(4096+O*(-768+O*(320-175*O))),H=O/1024*(256+O*(-128+O*(74-47*O))),V=H*P*(B+H/4*(R*(-1+2*b(B))-H/6*B*(-3+4*b(P))*(-3+4*b(B)))),U=s(C*M,m*x-g*C*E),W=s(m*M,-g*C+m*x*E),{distance:w(l*N*(z-V),this.DISTANCE_PRECISION),azimuthFrom:_(U),azimuthTo:_(W)}}});k.fn.toString=function(){return d.format(this.FORMAT,this.lat,this.lng)},k.fromLngLat=function(e){return new k(e[1],e[0])},k.fromLatLng=function(e){return new k(e[0],e[1])},k.create=function(e,n){return v(e)?e instanceof k?e.clone():1===arguments.length&&2===e.length?k.fromLatLng(e):new k(e,n):t},n=f.extend({init:function(e,t){e=k.create(e),t=k.create(t),e.lng+180>t.lng+180&&t.lat+90>e.lat+90?(this.se=e,this.nw=t):(this.se=t,this.nw=e)},contains:function(e){var t=this.nw,n=this.se,i=x(e.lng,e[1]),o=x(e.lat,e[0]);return e&&i+180>=t.lng+180&&n.lng+180>=i+180&&o+90>=n.lat+90&&t.lat+90>=o+90},center:function(){var e=this.nw,t=this.se,n=e.lng+(t.lng-e.lng)/2,i=e.lat+(t.lat-e.lat)/2;return new k(i,n)},containsAny:function(e){var t,n=!1;for(t=0;e.length>t;t++)n=n||this.contains(e[t]);return n},include:function(e){var t=this.nw,n=this.se,i=x(e.lng,e[1]),o=x(e.lat,e[0]);t.lng=c(t.lng,i),t.lat=l(t.lat,o),n.lng=l(n.lng,i),n.lat=c(n.lat,o)},includeAll:function(e){for(var t=0;e.length>t;t++)this.include(e[t])},edges:function(){var e=this.nw,t=this.se;return{nw:this.nw,ne:new k(e.lat,t.lng),se:this.se,sw:new k(t.lat,e.lng)}},toArray:function(){var e=this.nw,t=this.se;return[e,new k(e.lat,t.lng),t,new k(t.lat,e.lng)]},overlaps:function(e){return this.containsAny(e.toArray())||e.containsAny(this.toArray())}}),n.World=new n([90,-180],[-90,180]),n.create=function(e,i){return e instanceof n?e:e&&i?new n(e,i):e&&4===e.length&&!i?new n([e[0],e[1]],[e[2],e[3]]):t},g(p,{map:{Extent:n,Location:k}})}(window.kendo.jQuery)}(),function(){!function(){var e=window.kendo,t=e.ui.Widget,n=e.template,i=e.util.valueOrDefault,o=e.util.defined,r=t.extend({init:function(e,n){t.fn.init.call(this,e,n),this._initOptions(n),this.items=[],this.element.addClass("k-widget k-attribution")},options:{name:"Attribution",separator:" | ",itemTemplate:"#= text #"},filter:function(e,t){this._extent=e,this._zoom=t,this._render()},add:function(e){o(e)&&("string"==typeof e&&(e={text:e}),this.items.push(e),this._render())},remove:function(e){var t,n,i=[];for(t=0;this.items.length>t;t++)n=this.items[t],n.text!==e&&i.push(n);this.items=i,this._render()},clear:function(){this.items=[],this.element.empty()},_render:function(){var e,t,i,o=[],r=n(this.options.itemTemplate);for(e=0;this.items.length>e;e++)t=this.items[e],i=this._itemText(t),""!==i&&o.push(r({text:i}));o.length>0?this.element.empty().append(o.join(this.options.separator)).show():this.element.hide()},_itemText:function(e){var t="",n=this._inZoomLevel(e.minZoom,e.maxZoom),i=this._inArea(e.extent);return n&&i&&(t+=e.text),t},_inZoomLevel:function(e,t){var n=!0;return e=i(e,-Number.MAX_VALUE),t=i(t,Number.MAX_VALUE),n=this._zoom>e&&t>this._zoom},_inArea:function(e){var t=!0;return e&&(t=e.contains(this._extent)),t}});e.dataviz.ui.plugin(r)}(window.kendo.jQuery)}(),function(){!function(e){function t(e){return n.format('',e)}var n=window.kendo,i=n.ui.Widget,o=n.keys,r=e.proxy,s=".kendoNavigator",a=t("n")+t("e")+t("s")+t("w"),l=i.extend({init:function(e,t){i.fn.init.call(this,e,t),this._initOptions(t),this.element.addClass("k-widget k-header k-shadow k-navigator").append(a).on("click"+s,".k-button",r(this,"_click"));var o=this.element.parent().closest("["+n.attr("role")+"]");this._keyroot=o.length>0?o:this.element,this._tabindex(this._keyroot),this._keydown=r(this._keydown,this),this._keyroot.on("keydown",this._keydown)},options:{name:"Navigator",panStep:1},events:["pan"],dispose:function(){this._keyroot.off("keydown",this._keydown)},_pan:function(e,t){var n=this.options.panStep;this.trigger("pan",{x:e*n,y:t*n})},_click:function(t){var n=0,i=0,o=e(t.currentTarget);o.is(".k-navigator-n")?i=1:o.is(".k-navigator-s")?i=-1:o.is(".k-navigator-e")?n=1:o.is(".k-navigator-w")&&(n=-1),this._pan(n,i),t.preventDefault()},_keydown:function(e){switch(e.which){case o.UP:this._pan(0,1),e.preventDefault();break;case o.DOWN:this._pan(0,-1),e.preventDefault();break;case o.RIGHT:this._pan(1,0),e.preventDefault();break;case o.LEFT:this._pan(-1,0),e.preventDefault()}}});n.dataviz.ui.plugin(l)}(window.kendo.jQuery)}(),function(){!function(e){function t(e,t){return n.format('',e,t)}var n=window.kendo,i=n.ui.Widget,o=n.keys,r=e.proxy,s=".kendoZoomControl",a=t("in","+")+t("out","-"),l=187,c=189,u=61,h=173,d=i.extend({init:function(e,t){i.fn.init.call(this,e,t),this._initOptions(t),this.element.addClass("k-widget k-zoom-control k-button-wrap k-buttons-horizontal").append(a).on("click"+s,".k-button",r(this,"_click"));var o=this.element.parent().closest("["+n.attr("role")+"]");this._keyroot=o.length>0?o:this.element,this._tabindex(this._keyroot),this._keydown=r(this._keydown,this),this._keyroot.on("keydown",this._keydown)},options:{name:"ZoomControl",zoomStep:1},events:["change"],_change:function(e){var t=this.options.zoomStep;this.trigger("change",{delta:e*t})},_click:function(t){var n=e(t.currentTarget),i=1;n.is(".k-zoom-out")&&(i=-1),this._change(i),t.preventDefault()},_keydown:function(e){switch(e.which){case o.NUMPAD_PLUS:case l:case u:this._change(1);break;case o.NUMPAD_MINUS:case c:case h:this._change(-1)}}});n.dataviz.ui.plugin(d)}(window.kendo.jQuery)}(),function(){!function(){var e=Math,t=e.atan,n=e.exp,i=e.pow,o=e.sin,r=e.log,s=e.tan,a=window.kendo,l=a.Class,c=a.dataviz,u=a.deepExtend,h=a.geometry,d=h.Point,f=c.map,p=f.Location,g=a.util,m=g.rad,v=g.deg,_=g.limitValue,y=e.PI,w=y/2,b=y/4,x=y/180,k={a:6378137,b:6356752.314245179,f:.0033528106647474805,e:.08181919084262149},C=l.extend({init:function(e){this._initOptions(e)},MAX_LNG:180,MAX_LAT:85.0840590501,INVERSE_ITERATIONS:15,INVERSE_CONVERGENCE:1e-12,options:{centralMeridian:0,datum:k},forward:function(e,t){var n=this,i=n.options,o=i.datum,r=o.a,s=i.centralMeridian,a=_(e.lat,-n.MAX_LAT,n.MAX_LAT),l=t?_(e.lng,-n.MAX_LNG,n.MAX_LNG):e.lng,c=m(l-s)*r,u=n._projectLat(a);return new d(c,u)},_projectLat:function(e){var t=this.options.datum,n=t.e,a=t.a,l=m(e),c=s(b+l/2),u=n*o(l),h=i((1-u)/(1+u),n/2);return a*r(c*h)},inverse:function(e,t){var n=this,i=n.options,o=i.datum,r=o.a,s=i.centralMeridian,a=e.x/(x*r)+s,l=_(n._inverseY(e.y),-n.MAX_LAT,n.MAX_LAT);return t&&(a=_(a,-n.MAX_LNG,n.MAX_LNG)),new p(l,a)},_inverseY:function(r){var s,a,l,c,u=this,h=u.options.datum,d=h.a,f=h.e,p=f/2,g=n(-r/d),m=w-2*t(g);for(s=0;u.INVERSE_ITERATIONS>=s&&(a=f*o(m),l=i((1-a)/(1+a),p),c=w-2*t(g*l)-m,m+=c,!(e.abs(c)<=u.INVERSE_CONVERGENCE));s++);return v(m)}}),S=C.extend({MAX_LAT:85.0511287798,_projectLat:function(e){var t=this.options.datum.a,n=m(e),i=s(b+n/2);return t*r(i)},_inverseY:function(e){var i=this.options.datum.a,o=n(-e/i);return v(w-2*t(o))}}),T=l.extend({forward:function(e){return new d(e.lng,e.lat)},inverse:function(e){return new p(e.y,e.x)}}),A=l.extend({init:function(){var e=this,t=e._proj=new S,n=this.c=2*y*t.options.datum.a;this._tm=h.transform().translate(.5,.5).scale(1/n,-1/n),this._itm=h.transform().scale(n,-n).translate(-.5,-.5)},toPoint:function(e,t,n){var i=this._proj.forward(e,n);return i.transform(this._tm).scale(t||1)},toLocation:function(e,t,n){return e=e.clone().scale(1/(t||1)).transform(this._itm),this._proj.inverse(e,n)}}),D=l.extend({init:function(){this._proj=new C},toPoint:function(e){return this._proj.forward(e)},toLocation:function(e){return this._proj.inverse(e)}}),M=l.extend({init:function(){this._proj=new T},toPoint:function(e){return this._proj.forward(e)},toLocation:function(e){return this._proj.inverse(e)}});u(c,{map:{crs:{EPSG3395:D,EPSG3857:A,EPSG4326:M},datums:{WGS84:k},projections:{Equirectangular:T,Mercator:C,SphericalMercator:S}}})}(window.kendo.jQuery)}(),function(){!function(e){var t=e.proxy,n=window.kendo,i=n.Class,o=n.dataviz,r=n.deepExtend,s=o.map.Extent,a=n.util,l=a.defined,c=i.extend({init:function(n,i){this._initOptions(i),this.map=n,this.element=e("
").css({zIndex:this.options.zIndex,opacity:this.options.opacity}).appendTo(n.scrollElement),this._beforeReset=t(this._beforeReset,this),this._reset=t(this._reset,this),this._resize=t(this._resize,this),this._panEnd=t(this._panEnd,this),this._activate(),this._updateAttribution()},destroy:function(){this._deactivate()},show:function(){this.reset(),this._activate(),this._applyExtent(!0)},hide:function(){this._deactivate(),this._setVisibility(!1)},reset:function(){this._beforeReset(),this._reset()},_reset:function(){this._applyExtent()},_beforeReset:e.noop,_resize:e.noop,_panEnd:function(){this._applyExtent()},_applyExtent:function(){var e=this.options,t=this.map.zoom(),n=!l(e.minZoom)||t>=e.minZoom,i=!l(e.maxZoom)||e.maxZoom>=t,o=s.create(e.extent),r=!o||o.overlaps(this.map.extent());this._setVisibility(n&&i&&r)},_setVisibility:function(e){this.element.css("display",e?"":"none")},_activate:function(){var e=this.map;e.bind("beforeReset",this._beforeReset),e.bind("reset",this._reset),e.bind("resize",this._resize),e.bind("panEnd",this._panEnd)},_deactivate:function(){var e=this.map;e.unbind("beforeReset",this._beforeReset),e.unbind("reset",this._reset),e.unbind("resize",this._resize),e.unbind("panEnd",this._panEnd)},_updateAttribution:function(){var e=this.map.attribution;e&&e.add(this.options.attribution)}});r(o,{map:{layers:{Layer:c}}})}(window.kendo.jQuery)}(),function(){!function(e){var t=e.proxy,n=window.kendo,i=n.Class,o=n.data.DataSource,r=n.dataviz,s=n.deepExtend,a=n.util.last,l=n.util.defined,c=n.geometry,u=n.drawing,h=u.Group,d=r.map,f=d.Location,p=d.layers.Layer,g=p.extend({init:function(e,t){p.fn.init.call(this,e,t),this.surface=u.Surface.create(this.element,{width:e.scrollElement.width(),height:e.scrollElement.height()}),this._initRoot(),this.movable=new n.ui.Movable(this.surface.element),this._markers=[],this._click=this._handler("shapeClick"),this.surface.bind("click",this._click),this._mouseenter=this._handler("shapeMouseEnter"),this.surface.bind("mouseenter",this._mouseenter),this._mouseleave=this._handler("shapeMouseLeave"),this.surface.bind("mouseleave",this._mouseleave),this._initDataSource()},options:{autoBind:!0},destroy:function(){p.fn.destroy.call(this),this.surface.destroy(),this.dataSource.unbind("change",this._dataChange)},setDataSource:function(e){this.dataSource&&this.dataSource.unbind("change",this._dataChange),this.dataSource=n.data.DataSource.create(e),this.dataSource.bind("change",this._dataChange),this.options.autoBind&&this.dataSource.fetch()},_reset:function(){p.fn._reset.call(this),this._translateSurface(),this._data&&this._load(this._data)},_initRoot:function(){this._root=new h,this.surface.draw(this._root)},_beforeReset:function(){this.surface.clear(),this._initRoot()},_resize:function(){this.surface.size(this.map.size())},_initDataSource:function(){var e=this.options.dataSource;this._dataChange=t(this._dataChange,this),this.dataSource=o.create(e).bind("change",this._dataChange),e&&this.options.autoBind&&this.dataSource.fetch()},_dataChange:function(e){this._data=e.sender.view(),this._load(this._data)},_load:function(e){var t,n,i;for(this._clearMarkers(),this._loader||(this._loader=new m(this.map,this.options.style,this)),t=new h,n=0;e.length>n;n++)i=this._loader.parse(e[n]),i&&t.append(i);this._root.clear(),this._root.append(t)},shapeCreated:function(e){var t,n=!1;return e instanceof u.Circle&&(n=l(this._createMarker(e))),n||(t={layer:this,shape:e},n=this.map.trigger("shapeCreated",t)),n},_createMarker:function(e){var t=this.map.markers.bind({location:e.location},e.dataItem);return t&&this._markers.push(t),t},_clearMarkers:function(){for(var e=0;this._markers.length>e;e++)this.map.markers.remove(this._markers[e]);this._markers=[]},_panEnd:function(e){p.fn._panEnd.call(this,e),this._translateSurface()},_translateSurface:function(){var e=this.map,t=e.locationToView(e.extent().nw);this.surface.translate&&(this.surface.translate(t),this.movable.moveTo({x:t.x,y:t.y}))},_handler:function(e){var t=this;return function(n){if(n.element){var i={layer:t,shape:n.element,originalEvent:n.originalEvent};t.map.trigger(e,i)}}}}),m=i.extend({init:function(e,t,n){this.observer=n,this.locator=e,this.style=t},parse:function(e){var t=new h;return"Feature"===e.type?this._loadGeometryTo(t,e.geometry,e):this._loadGeometryTo(t,e,e),2>t.children.length&&(t=t.children[0]),t},_shapeCreated:function(e){var t=!1;return this.observer&&this.observer.shapeCreated&&(t=this.observer.shapeCreated(e)),t},_loadGeometryTo:function(e,t,n){var i,o,r=t.coordinates;switch(t.type){case"LineString":o=this._loadPolygon(e,[r],n),this._setLineFill(o);break;case"MultiLineString":for(i=0;r.length>i;i++)o=this._loadPolygon(e,[r[i]],n),this._setLineFill(o);break;case"Polygon":this._loadPolygon(e,r,n);break;case"MultiPolygon":for(i=0;r.length>i;i++)this._loadPolygon(e,r[i],n);break;case"Point":this._loadPoint(e,r,n);break;case"MultiPoint":for(i=0;r.length>i;i++)this._loadPoint(e,r[i],n)}},_setLineFill:function(e){var t=e.segments;(4>t.length||!t[0].anchor().equals(a(t).anchor()))&&(e.options.fill=null)},_loadShape:function(e,t){return this._shapeCreated(t)||e.append(t),t},_loadPolygon:function(e,t,n){var i=this._buildPolygon(t);return i.dataItem=n,this._loadShape(e,i)},_buildPolygon:function(e){var t,n,i,o=e.length>1?u.MultiPath:u.Path,r=new o(this.style);for(t=0;e.length>t;t++)for(n=0;e[t].length>n;n++)i=this.locator.locationToView(f.fromLngLat(e[t][n])),0===n?r.moveTo(i.x,i.y):r.lineTo(i.x,i.y);return r},_loadPoint:function(e,t,n){var i=f.fromLngLat(t),o=this.locator.locationToView(i),r=new c.Circle(o,10),s=new u.Circle(r,this.style);return s.dataItem=n,s.location=i,this._loadShape(e,s)}});s(n.data,{schemas:{geojson:{type:"json",data:function(e){return"FeatureCollection"===e.type?e.features:"GeometryCollection"===e.type?e.geometries:e}}},transports:{geojson:{read:{dataType:"json"}}}}),s(r,{map:{layers:{shape:g,ShapeLayer:g},GeoJSONLoader:m}})}(window.kendo.jQuery)}(),function(){!function(){var e=window.kendo,t=e.getter,n=e.dataviz,i=e.deepExtend,o=e.util,r=o.defined,s=e.geometry,a=e.drawing,l=n.map,c=l.Location,u=l.layers.ShapeLayer,h=u.extend({options:{autoBind:!0,locationField:"location",valueField:"value",minSize:0,maxSize:100,scale:"sqrt",symbol:"circle"},_load:function(e){var n,i,o,s,a,l,u,h,d,f,p;if(this.surface.clear(),0!==e.length)for(n=this.options,i=t(n.valueField),e=e.slice(0),e.sort(function(e,t){return i(t)-i(e)}),o=this._scaleType(),a=0;e.length>a;a++)l=e[a],u=t(n.locationField)(l),h=t(n.valueField)(l),r(u)&&r(h)&&(s||(s=new o([0,h],[n.minSize,n.maxSize])),u=c.create(u),d=this.map.locationToView(u),f=s.map(h),p=this._createSymbol({center:d,size:f,style:n.style,dataItem:l,location:u}),p.dataItem=l,p.location=u,p.value=h,this._drawSymbol(p))},_scaleType:function(){var t=this.options.scale;return e.isFunction(t)?t:n.map.scales[t]},_createSymbol:function(t){var i=this.options.symbol;return e.isFunction(i)||(i=n.map.symbols[i]),i(t)},_drawSymbol:function(e){var t={layer:this,shape:e},n=this.map.trigger("shapeCreated",t);n||this.surface.draw(e)}}),d=e.Class.extend({init:function(e,t){var n,i;this._domain=e,this._range=t,n=Math.sqrt(e[1])-Math.sqrt(e[0]),i=t[1]-t[0],this._ratio=i/n},map:function(e){var t=(Math.sqrt(e)-Math.sqrt(this._domain[0]))*this._ratio;return this._range[0]+t}}),f={circle:function(e){var t=new s.Circle(e.center,e.size/2);return new a.Circle(t,e.style)},square:function(e){var t=new a.Path(e.style),n=e.size/2,i=e.center;return t.moveTo(i.x-n,i.y-n).lineTo(i.x+n,i.y-n).lineTo(i.x+n,i.y+n).lineTo(i.x-n,i.y+n).close(),t}};i(n,{map:{layers:{bubble:h,BubbleLayer:h},scales:{sqrt:d},symbols:f}})}(window.kendo.jQuery)}(),function(){!function(e){function t(e){return new u(p(e.x),p(e.y))}var n=Math,i=e.proxy,o=window.kendo,r=o.Class,s=o.template,a=o.dataviz,l=o.deepExtend,c=o.geometry,u=c.Point,h=a.map.layers.Layer,d=o.util,f=d.objectKey,p=d.round,g=d.renderSize,m=d.limitValue,v=h.extend({init:function(e,t){h.fn.init.call(this,e,t),"string"==typeof this.options.subdomains&&(this.options.subdomains=this.options.subdomains.split(""));var n=this._viewType();this._view=new n(this.element,this.options)},destroy:function(){h.fn.destroy.call(this),this._view.destroy(),this._view=null},_reset:function(){h.fn._reset.call(this),this._updateView(),this._view.reset()},_viewType:function(){return _},_activate:function(){h.fn._activate.call(this),o.support.mobileOS||(this._pan||(this._pan=o.throttle(i(this._render,this),100)),this.map.bind("pan",this._pan))},_deactivate:function(){h.fn._deactivate.call(this),this._pan&&this.map.unbind("pan",this._pan)},_updateView:function(){var e=this._view,t=this.map,n=t.extent(),i={nw:t.locationToLayer(n.nw).round(),se:t.locationToLayer(n.se).round()};e.center(t.locationToLayer(t.center())),e.extent(i),e.zoom(t.zoom())},_resize:function(){this._render()},_panEnd:function(e){h.fn._panEnd.call(this,e),this._render()},_render:function(){this._updateView(),this._view.render()}}),_=r.extend({init:function(e,t){this.element=e,this._initOptions(t),this.pool=new w},options:{tileSize:256,subdomains:["a","b","c"],urlTemplate:""},center:function(e){this._center=e},extent:function(e){this._extent=e},zoom:function(e){this._zoom=e},pointToTileIndex:function(e){return new u(n.floor(e.x/this.options.tileSize),n.floor(e.y/this.options.tileSize))},tileCount:function(){var e=this.size(),t=this.pointToTileIndex(this._extent.nw),i=this._extent.nw,o=this.indexToPoint(t).translate(-i.x,-i.y);return{x:n.ceil((n.abs(o.x)+e.width)/this.options.tileSize),y:n.ceil((n.abs(o.y)+e.height)/this.options.tileSize)}},size:function(){var e=this._extent.nw,t=this._extent.se,n=t.clone().translate(-e.x,-e.y);return{width:n.x,height:n.y}},indexToPoint:function(e){var t=e.x,n=e.y;return new u(t*this.options.tileSize,n*this.options.tileSize)},subdomainText:function(){var e=this.options.subdomains;return e[this.subdomainIndex++%e.length]},destroy:function(){this.element.empty(),this.pool.empty()},reset:function(){this.pool.reset(),this.subdomainIndex=0,this.basePoint=this._extent.nw,this.render()},render:function(){var e,t,n,i=this.tileCount(),o=this.pointToTileIndex(this._extent.nw);for(t=0;i.x>t;t++)for(n=0;i.y>n;n++)e=this.createTile({x:o.x+t,y:o.y+n}),e.visible||e.show()},createTile:function(e){var t=this.tileOptions(e),n=this.pool.get(this._center,t);return 0===n.element.parent().length&&this.element.append(n.element),n},tileOptions:function(e){var n=this.wrapIndex(e),i=this.indexToPoint(e),o=this.basePoint,r=i.clone().translate(-o.x,-o.y);return{index:n,currentIndex:e,point:i,offset:t(r),zoom:this._zoom,size:this.options.tileSize,subdomain:this.subdomainText(),urlTemplate:this.options.urlTemplate,errorUrlTemplate:this.options.errorUrlTemplate}},wrapIndex:function(e){var t=n.pow(2,this._zoom);return{x:this.wrapValue(e.x,t),y:m(e.y,0,t-1)}},wrapValue:function(e,t){var i=n.abs(e)%t;return e=e>=0?i:t-(0===i?t:i)}}),y=r.extend({init:function(e,t){this.id=e,this.visible=!0,this._initOptions(t),this.createElement(),this.show()},options:{urlTemplate:"",errorUrlTemplate:""},createElement:function(){this.element=e("