UNPKG

dicomweb-websocket-bridge

Version:

Redirect dicomweb traffic over websockets to a local PACS server

3 lines 751 kB
/*! For license information please see vendors~dicom-microscopy-viewer.bundle.a7b221b7ff55f42ac881.js.LICENSE */
(window.webpackJsonp=window.webpackJsonp||[]).push([[11],{1098:function(e,t,i){(function(e){(function(t){"use strict";function i(){return function(){throw new Error("Unimplemented abstract method.")}()}var n=0;function r(e){return e.ol_uid||(e.ol_uid=String(++n))}var o="5.3.0",a=function(e){function t(t){var i="Assertion failed. See https://openlayers.org/en/v"+o.split("-")[0]+"/doc/errors/#"+t+" for details.";e.call(this,i),this.code=t,this.name="AssertionError",this.message=i}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(Error),s={ADD:"add",REMOVE:"remove"},c="propertychange",l="function"==typeof Object.assign?Object.assign:function(e,t){var i=arguments;if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var n=Object(e),r=1,o=arguments.length;r<o;++r){var a=i[r];if(null!=a)for(var s in a)a.hasOwnProperty(s)&&(n[s]=a[s])}return n};function u(e){for(var t in e)delete e[t]}function h(e){var t=[];for(var i in e)t.push(e[i]);return t}function d(e){var t;for(t in e)return!1;return!t}function p(e,t,i,n){for(var r,o=0,a=e.length;o<a;++o)if((r=e[o]).listener===t&&r.bindTo===i)return n&&(r.deleteIndex=o),r}function m(e,t){var i=f(e);return i?i[t]:void 0}function f(e,t){var i=e.ol_lm;return!i&&t&&(i=e.ol_lm={}),i}function g(e,t){var i=m(e,t);if(i){for(var n=0,r=i.length;n<r;++n)e.removeEventListener(t,i[n].boundListener),u(i[n]);i.length=0;var o=f(e);o&&(delete o[t],0===Object.keys(o).length&&function(e){delete e.ol_lm}(e))}}function S(e,t,i,n,r){var o=f(e,!0),a=o[t];a||(a=o[t]=[]);var s=p(a,i,n,!1);return s?r||(s.callOnce=!1):(s={bindTo:n,callOnce:!!r,listener:i,target:e,type:t},e.addEventListener(t,function(e){var t=function(t){var i=e.listener,n=e.bindTo||e.target;return e.callOnce&&_(e),i.call(n,t)};return e.boundListener=t,t}(s)),a.push(s)),s}function y(e,t,i,n){return S(e,t,i,n,!0)}function v(e,t,i,n){var r=m(e,t);if(r){var o=p(r,i,n,!0);o&&_(o)}}function _(e){if(e&&e.target){e.target.removeEventListener(e.type,e.boundListener);var t=m(e.target,e.type);if(t){var i="deleteIndex"in e?e.deleteIndex:t.indexOf(e);-1!==i&&t.splice(i,1),0===t.length&&g(e.target,e.type)}u(e)}}function C(e){var t=f(e);if(t)for(var i in t)g(e,i)}var T=function(){this.disposed_=!1};function D(){return!0}function A(){return!1}function I(){}T.prototype.dispose=function(){this.disposed_||(this.disposed_=!0,this.disposeInternal())},T.prototype.disposeInternal=function(){};var P=function(e){this.propagationStopped,this.type=e,this.target=null};function R(e){e.stopPropagation()}P.prototype.preventDefault=function(){this.propagationStopped=!0},P.prototype.stopPropagation=function(){this.propagationStopped=!0};var x=function(e){function t(){e.call(this),this.pendingRemovals_={},this.dispatching_={},this.listeners_={}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addEventListener=function(e,t){var i=this.listeners_[e];i||(i=this.listeners_[e]=[]),-1===i.indexOf(t)&&i.push(t)},t.prototype.dispatchEvent=function(e){var t="string"==typeof e?new P(e):e,i=t.type;t.target=this;var n,r=this.listeners_[i];if(r){i in this.dispatching_||(this.dispatching_[i]=0,this.pendingRemovals_[i]=0),++this.dispatching_[i];for(var o=0,a=r.length;o<a;++o)if(!1===r[o].call(this,t)||t.propagationStopped){n=!1;break}if(--this.dispatching_[i],0===this.dispatching_[i]){var s=this.pendingRemovals_[i];for(delete this.pendingRemovals_[i];s--;)this.removeEventListener(i,I);delete this.dispatching_[i]}return n}},t.prototype.disposeInternal=function(){C(this)},t.prototype.getListeners=function(e){return this.listeners_[e]},t.prototype.hasListener=function(e){return e?e in this.listeners_:Object.keys(this.listeners_).length>0},t.prototype.removeEventListener=function(e,t){var i=this.listeners_[e];if(i){var n=i.indexOf(t);e in this.pendingRemovals_?(i[n]=I,++this.pendingRemovals_[e]):(i.splice(n,1),0===i.length&&delete this.listeners_[e])}},t}(T),E={CHANGE:"change",CLEAR:"clear",CONTEXTMENU:"contextmenu",CLICK:"click",DBLCLICK:"dblclick",DRAGENTER:"dragenter",DRAGOVER:"dragover",DROP:"drop",ERROR:"error",KEYDOWN:"keydown",KEYPRESS:"keypress",LOAD:"load",MOUSEDOWN:"mousedown",MOUSEMOVE:"mousemove",MOUSEOUT:"mouseout",MOUSEUP:"mouseup",MOUSEWHEEL:"mousewheel",MSPOINTERDOWN:"MSPointerDown",RESIZE:"resize",TOUCHSTART:"touchstart",TOUCHMOVE:"touchmove",TOUCHEND:"touchend",WHEEL:"wheel"},b=function(e){function t(){e.call(this),this.revision_=0}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.changed=function(){++this.revision_,this.dispatchEvent(E.CHANGE)},t.prototype.getRevision=function(){return this.revision_},t.prototype.on=function(e,t){if(Array.isArray(e)){for(var i=e.length,n=new Array(i),r=0;r<i;++r)n[r]=S(this,e[r],t);return n}return S(this,e,t)},t.prototype.once=function(e,t){if(Array.isArray(e)){for(var i=e.length,n=new Array(i),r=0;r<i;++r)n[r]=y(this,e[r],t);return n}return y(this,e,t)},t.prototype.un=function(e,t){if(Array.isArray(e))for(var i=0,n=e.length;i<n;++i)v(this,e[i],t);else v(this,e,t)},t}(x),O=function(e){function t(t,i,n){e.call(this,t),this.key=i,this.oldValue=n}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),q=function(e){function t(t){e.call(this),r(this),this.values_={},void 0!==t&&this.setProperties(t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){var t;return this.values_.hasOwnProperty(e)&&(t=this.values_[e]),t},t.prototype.getKeys=function(){return Object.keys(this.values_)},t.prototype.getProperties=function(){return l({},this.values_)},t.prototype.notify=function(e,t){var i;i=M(e),this.dispatchEvent(new O(i,e,t)),i=c,this.dispatchEvent(new O(i,e,t))},t.prototype.set=function(e,t,i){if(i)this.values_[e]=t;else{var n=this.values_[e];this.values_[e]=t,n!==t&&this.notify(e,n)}},t.prototype.setProperties=function(e,t){for(var i in e)this.set(i,e[i],t)},t.prototype.unset=function(e,t){if(e in this.values_){var i=this.values_[e];delete this.values_[e],t||this.notify(e,i)}},t}(b),F={};function M(e){return F.hasOwnProperty(e)?F[e]:F[e]="change:"+e}var L,w,N="length",B=function(e){function t(t,i){e.call(this,t),this.element=i}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),V=function(e){function t(t,i){e.call(this);var n=i||{};if(this.unique_=!!n.unique,this.array_=t||[],this.unique_)for(var r=0,o=this.array_.length;r<o;++r)this.assertUnique_(this.array_[r],r);this.updateLength_()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clear=function(){for(;this.getLength()>0;)this.pop()},t.prototype.extend=function(e){for(var t=0,i=e.length;t<i;++t)this.push(e[t]);return this},t.prototype.forEach=function(e){for(var t=this.array_,i=0,n=t.length;i<n;++i)e(t[i],i,t)},t.prototype.getArray=function(){return this.array_},t.prototype.item=function(e){return this.array_[e]},t.prototype.getLength=function(){return this.get(N)},t.prototype.insertAt=function(e,t){this.unique_&&this.assertUnique_(t),this.array_.splice(e,0,t),this.updateLength_(),this.dispatchEvent(new B(s.ADD,t))},t.prototype.pop=function(){return this.removeAt(this.getLength()-1)},t.prototype.push=function(e){this.unique_&&this.assertUnique_(e);var t=this.getLength();return this.insertAt(t,e),this.getLength()},t.prototype.remove=function(e){for(var t=this.array_,i=0,n=t.length;i<n;++i)if(t[i]===e)return this.removeAt(i)},t.prototype.removeAt=function(e){var t=this.array_[e];return this.array_.splice(e,1),this.updateLength_(),this.dispatchEvent(new B(s.REMOVE,t)),t},t.prototype.setAt=function(e,t){var i=this.getLength();if(e<i){this.unique_&&this.assertUnique_(t,e);var n=this.array_[e];this.array_[e]=t,this.dispatchEvent(new B(s.REMOVE,n)),this.dispatchEvent(new B(s.ADD,t))}else{for(var r=i;r<e;++r)this.insertAt(r,void 0);this.insertAt(e,t)}},t.prototype.updateLength_=function(){this.set(N,this.array_.length)},t.prototype.assertUnique_=function(e,t){for(var i=0,n=this.array_.length;i<n;++i)if(this.array_[i]===e&&i!==t)throw new a(58)},t}(q),k=function(e){function t(t,i,n){e.call(this,t),this.map=i,this.frameState=void 0!==n?n:null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),G=function(e){function t(t,i,n,r,o){e.call(this,t,i,o),this.originalEvent=n,this.pixel=i.getEventPixel(n),this.coordinate=i.getCoordinateFromPixel(this.pixel),this.dragging=void 0!==r&&r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.preventDefault=function(){e.prototype.preventDefault.call(this),this.originalEvent.preventDefault()},t.prototype.stopPropagation=function(){e.prototype.stopPropagation.call(this),this.originalEvent.stopPropagation()},t}(k),U=9729,W=10242,z=10243,H=3553,j=["experimental-webgl","webgl","webkit-3d","moz-webgl"];function X(e,t){for(var i=j.length,n=0;n<i;++n)try{var r=e.getContext(j[n],t);if(r)return r}catch(e){}return null}if("undefined"!=typeof window&&"WebGLRenderingContext"in window)try{var Y=X(document.createElement("canvas"),{failIfMajorPerformanceCaveat:!0});Y&&(L=Y.getParameter(Y.MAX_TEXTURE_SIZE),w=Y.getSupportedExtensions())}catch(e){}var K="undefined"!=typeof navigator?navigator.userAgent.toLowerCase():"",Z=-1!==K.indexOf("firefox"),Q=-1!==K.indexOf("safari")&&-1==K.indexOf("chrom"),J=-1!==K.indexOf("webkit")&&-1==K.indexOf("edge"),$=-1!==K.indexOf("macintosh"),ee=window.devicePixelRatio||1,te=function(){var e=!1;try{e=!!document.createElement("canvas").getContext("2d").setLineDash}catch(e){}return e}(),ie="ontouchstart"in window,ne="PointerEvent"in window,re=!!navigator.msPointerEnabled,oe={SINGLECLICK:"singleclick",CLICK:E.CLICK,DBLCLICK:E.DBLCLICK,POINTERDRAG:"pointerdrag",POINTERMOVE:"pointermove",POINTERDOWN:"pointerdown",POINTERUP:"pointerup",POINTEROVER:"pointerover",POINTEROUT:"pointerout",POINTERENTER:"pointerenter",POINTERLEAVE:"pointerleave",POINTERCANCEL:"pointercancel"},ae=function(e){function t(t,i,n,r,o){e.call(this,t,i,n.originalEvent,r,o),this.pointerEvent=n}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(G),se={POINTERMOVE:"pointermove",POINTERDOWN:"pointerdown",POINTERUP:"pointerup",POINTEROVER:"pointerover",POINTEROUT:"pointerout",POINTERENTER:"pointerenter",POINTERLEAVE:"pointerleave",POINTERCANCEL:"pointercancel"},ce=function(e,t){this.dispatcher=e,this.mapping_=t};ce.prototype.getEvents=function(){return Object.keys(this.mapping_)},ce.prototype.getHandlerForEvent=function(e){return this.mapping_[e]};var le=1,ue="mouse";function he(e){if(!this.isEventSimulatedFromTouch_(e)){le.toString()in this.pointerMap&&this.cancel(e);var t=Se(e,this.dispatcher);this.pointerMap[le.toString()]=e,this.dispatcher.down(t,e)}}function de(e){if(!this.isEventSimulatedFromTouch_(e)){var t=Se(e,this.dispatcher);this.dispatcher.move(t,e)}}function pe(e){if(!this.isEventSimulatedFromTouch_(e)){var t=this.pointerMap[le.toString()];if(t&&t.button===e.button){var i=Se(e,this.dispatcher);this.dispatcher.up(i,e),this.cleanupMouse()}}}function me(e){if(!this.isEventSimulatedFromTouch_(e)){var t=Se(e,this.dispatcher);this.dispatcher.enterOver(t,e)}}function fe(e){if(!this.isEventSimulatedFromTouch_(e)){var t=Se(e,this.dispatcher);this.dispatcher.leaveOut(t,e)}}var ge=function(e){function t(t){var i={mousedown:he,mousemove:de,mouseup:pe,mouseover:me,mouseout:fe};e.call(this,t,i),this.pointerMap=t.pointerMap,this.lastTouches=[]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.isEventSimulatedFromTouch_=function(e){for(var t=this.lastTouches,i=e.clientX,n=e.clientY,r=0,o=t.length,a=void 0;r<o&&(a=t[r]);r++){var s=Math.abs(i-a[0]),c=Math.abs(n-a[1]);if(s<=25&&c<=25)return!0}return!1},t.prototype.cancel=function(e){var t=Se(e,this.dispatcher);this.dispatcher.cancel(t,e),this.cleanupMouse()},t.prototype.cleanupMouse=function(){delete this.pointerMap[le.toString()]},t}(ce);function Se(e,t){var i=t.cloneEvent(e,e),n=i.preventDefault;return i.preventDefault=function(){e.preventDefault(),n()},i.pointerId=le,i.isPrimary=!0,i.pointerType=ue,i}var ye=["","unavailable","touch","pen","mouse"];function ve(e){this.pointerMap[e.pointerId.toString()]=e;var t=this.prepareEvent_(e);this.dispatcher.down(t,e)}function _e(e){var t=this.prepareEvent_(e);this.dispatcher.move(t,e)}function Ce(e){var t=this.prepareEvent_(e);this.dispatcher.up(t,e),this.cleanup(e.pointerId)}function Te(e){var t=this.prepareEvent_(e);this.dispatcher.leaveOut(t,e)}function De(e){var t=this.prepareEvent_(e);this.dispatcher.enterOver(t,e)}function Ae(e){var t=this.prepareEvent_(e);this.dispatcher.cancel(t,e),this.cleanup(e.pointerId)}function Ie(e){var t=this.dispatcher.makeEvent("lostpointercapture",e,e);this.dispatcher.dispatchEvent(t)}function Pe(e){var t=this.dispatcher.makeEvent("gotpointercapture",e,e);this.dispatcher.dispatchEvent(t)}var Re=function(e){function t(t){var i={MSPointerDown:ve,MSPointerMove:_e,MSPointerUp:Ce,MSPointerOut:Te,MSPointerOver:De,MSPointerCancel:Ae,MSGotPointerCapture:Pe,MSLostPointerCapture:Ie};e.call(this,t,i),this.pointerMap=t.pointerMap}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.prepareEvent_=function(e){var t=e;return"number"==typeof e.pointerType&&((t=this.dispatcher.cloneEvent(e,e)).pointerType=ye[e.pointerType]),t},t.prototype.cleanup=function(e){delete this.pointerMap[e.toString()]},t}(ce);function xe(e){this.dispatcher.fireNativeEvent(e)}function Ee(e){this.dispatcher.fireNativeEvent(e)}function be(e){this.dispatcher.fireNativeEvent(e)}function Oe(e){this.dispatcher.fireNativeEvent(e)}function qe(e){this.dispatcher.fireNativeEvent(e)}function Fe(e){this.dispatcher.fireNativeEvent(e)}function Me(e){this.dispatcher.fireNativeEvent(e)}function Le(e){this.dispatcher.fireNativeEvent(e)}var we=function(e){function t(t){var i={pointerdown:xe,pointermove:Ee,pointerup:be,pointerout:Oe,pointerover:qe,pointercancel:Fe,gotpointercapture:Le,lostpointercapture:Me};e.call(this,t,i)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(ce),Ne=!1,Be=function(e){function t(t,i,n){e.call(this,t),this.originalEvent=i;var r=n||{};this.buttons=function(e){var t;if(e.buttons||Ne)t=e.buttons;else switch(e.which){case 1:t=1;break;case 2:t=4;break;case 3:t=2;break;default:t=0}return t}(r),this.pressure=function(e,t){return e.pressure?e.pressure:t?.5:0}(r,this.buttons),this.bubbles="bubbles"in r&&r.bubbles,this.cancelable="cancelable"in r&&r.cancelable,this.view="view"in r?r.view:null,this.detail="detail"in r?r.detail:null,this.screenX="screenX"in r?r.screenX:0,this.screenY="screenY"in r?r.screenY:0,this.clientX="clientX"in r?r.clientX:0,this.clientY="clientY"in r?r.clientY:0,this.ctrlKey="ctrlKey"in r&&r.ctrlKey,this.altKey="altKey"in r&&r.altKey,this.shiftKey="shiftKey"in r&&r.shiftKey,this.metaKey="metaKey"in r&&r.metaKey,this.button="button"in r?r.button:0,this.relatedTarget="relatedTarget"in r?r.relatedTarget:null,this.pointerId="pointerId"in r?r.pointerId:0,this.width="width"in r?r.width:0,this.height="height"in r?r.height:0,this.tiltX="tiltX"in r?r.tiltX:0,this.tiltY="tiltY"in r?r.tiltY:0,this.pointerType="pointerType"in r?r.pointerType:"",this.hwTimestamp="hwTimestamp"in r?r.hwTimestamp:0,this.isPrimary="isPrimary"in r&&r.isPrimary,i.preventDefault&&(this.preventDefault=function(){i.preventDefault()})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P);function Ve(e,t){return e>t?1:e<t?-1:0}function ke(e,t){return e.indexOf(t)>=0}function Ge(e,t,i){var n,r=e.length;if(e[0]<=t)return 0;if(t<=e[r-1])return r-1;if(i>0){for(n=1;n<r;++n)if(e[n]<t)return n-1}else if(i<0){for(n=1;n<r;++n)if(e[n]<=t)return n}else for(n=1;n<r;++n){if(e[n]==t)return n;if(e[n]<t)return e[n-1]-t<t-e[n]?n-1:n}return r-1}function Ue(e,t,i){for(;t<i;){var n=e[t];e[t]=e[i],e[i]=n,++t,--i}}function We(e,t){for(var i=Array.isArray(t)?t:[t],n=i.length,r=0;r<n;r++)e[e.length]=i[r]}function ze(e,t){var i=e.length;if(i!==t.length)return!1;for(var n=0;n<i;n++)if(e[n]!==t[n])return!1;return!0}function He(e,t){var i,n=e.length,r=Array(e.length);for(i=0;i<n;i++)r[i]={index:i,value:e[i]};for(r.sort((function(e,i){return t(e.value,i.value)||e.index-i.index})),i=0;i<e.length;i++)e[i]=r[i].value}function je(e){this.vacuumTouches_(e),this.setPrimaryTouch_(e.changedTouches[0]),this.dedupSynthMouse_(e),this.clickCount_++,this.processTouches_(e,this.overDown_)}function Xe(e){this.processTouches_(e,this.moveOverOut_)}function Ye(e){this.dedupSynthMouse_(e),this.processTouches_(e,this.upOut_)}function Ke(e){this.processTouches_(e,this.cancelOut_)}!function(){try{var e=new MouseEvent("click",{buttons:1});Ne=1===e.buttons}catch(e){}}();var Ze=function(e){function t(t,i){var n={touchstart:je,touchmove:Xe,touchend:Ye,touchcancel:Ke};e.call(this,t,n),this.pointerMap=t.pointerMap,this.mouseSource=i,this.firstTouchId_=void 0,this.clickCount_=0,this.resetId_,this.dedupTimeout_=2500}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.isPrimaryTouch_=function(e){return this.firstTouchId_===e.identifier},t.prototype.setPrimaryTouch_=function(e){var t=Object.keys(this.pointerMap).length;(0===t||1===t&&le.toString()in this.pointerMap)&&(this.firstTouchId_=e.identifier,this.cancelResetClickCount_())},t.prototype.removePrimaryPointer_=function(e){e.isPrimary&&(this.firstTouchId_=void 0,this.resetClickCount_())},t.prototype.resetClickCount_=function(){this.resetId_=setTimeout(this.resetClickCountHandler_.bind(this),200)},t.prototype.resetClickCountHandler_=function(){this.clickCount_=0,this.resetId_=void 0},t.prototype.cancelResetClickCount_=function(){void 0!==this.resetId_&&clearTimeout(this.resetId_)},t.prototype.touchToPointer_=function(e,t){var i=this.dispatcher.cloneEvent(e,t);return i.pointerId=t.identifier+2,i.bubbles=!0,i.cancelable=!0,i.detail=this.clickCount_,i.button=0,i.buttons=1,i.width=t.radiusX||0,i.height=t.radiusY||0,i.pressure=t.force||.5,i.isPrimary=this.isPrimaryTouch_(t),i.pointerType="touch",i.clientX=t.clientX,i.clientY=t.clientY,i.screenX=t.screenX,i.screenY=t.screenY,i},t.prototype.processTouches_=function(e,t){var i=Array.prototype.slice.call(e.changedTouches),n=i.length;function r(){e.preventDefault()}for(var o=0;o<n;++o){var a=this.touchToPointer_(e,i[o]);a.preventDefault=r,t.call(this,e,a)}},t.prototype.findTouch_=function(e,t){for(var i=e.length,n=0;n<i;n++)if(e[n].identifier===t)return!0;return!1},t.prototype.vacuumTouches_=function(e){var t=e.touches,i=Object.keys(this.pointerMap),n=i.length;if(n>=t.length){for(var r=[],o=0;o<n;++o){var a=Number(i[o]),s=this.pointerMap[a];a==le||this.findTouch_(t,a-2)||r.push(s.out)}for(var c=0;c<r.length;++c)this.cancelOut_(e,r[c])}},t.prototype.overDown_=function(e,t){this.pointerMap[t.pointerId]={target:t.target,out:t,outTarget:t.target},this.dispatcher.over(t,e),this.dispatcher.enter(t,e),this.dispatcher.down(t,e)},t.prototype.moveOverOut_=function(e,t){var i=t,n=this.pointerMap[i.pointerId];if(n){var r=n.out,o=n.outTarget;this.dispatcher.move(i,e),r&&o!==i.target&&(r.relatedTarget=i.target,i.relatedTarget=o,r.target=o,i.target?(this.dispatcher.leaveOut(r,e),this.dispatcher.enterOver(i,e)):(i.target=o,i.relatedTarget=null,this.cancelOut_(e,i))),n.out=i,n.outTarget=i.target}},t.prototype.upOut_=function(e,t){this.dispatcher.up(t,e),this.dispatcher.out(t,e),this.dispatcher.leave(t,e),this.cleanUpPointer_(t)},t.prototype.cancelOut_=function(e,t){this.dispatcher.cancel(t,e),this.dispatcher.out(t,e),this.dispatcher.leave(t,e),this.cleanUpPointer_(t)},t.prototype.cleanUpPointer_=function(e){delete this.pointerMap[e.pointerId],this.removePrimaryPointer_(e)},t.prototype.dedupSynthMouse_=function(e){var t=this.mouseSource.lastTouches,i=e.changedTouches[0];if(this.isPrimaryTouch_(i)){var n=[i.clientX,i.clientY];t.push(n),setTimeout((function(){var e,i,r;i=n,(r=(e=t).indexOf(i))>-1&&e.splice(r,1)}),this.dedupTimeout_)}},t}(ce),Qe=[["bubbles",!1],["cancelable",!1],["view",null],["detail",null],["screenX",0],["screenY",0],["clientX",0],["clientY",0],["ctrlKey",!1],["altKey",!1],["shiftKey",!1],["metaKey",!1],["button",0],["relatedTarget",null],["buttons",0],["pointerId",0],["width",0],["height",0],["pressure",0],["tiltX",0],["tiltY",0],["pointerType",""],["hwTimestamp",0],["isPrimary",!1],["type",""],["target",null],["currentTarget",null],["which",0]],Je=function(e){function t(t){e.call(this),this.element_=t,this.pointerMap={},this.eventMap_={},this.eventSourceList_=[],this.registerSources()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.registerSources=function(){if(ne)this.registerSource("native",new we(this));else if(re)this.registerSource("ms",new Re(this));else{var e=new ge(this);this.registerSource("mouse",e),ie&&this.registerSource("touch",new Ze(this,e))}this.register_()},t.prototype.registerSource=function(e,t){var i=t,n=i.getEvents();n&&(n.forEach(function(e){var t=i.getHandlerForEvent(e);t&&(this.eventMap_[e]=t.bind(i))}.bind(this)),this.eventSourceList_.push(i))},t.prototype.register_=function(){for(var e=this.eventSourceList_.length,t=0;t<e;t++){var i=this.eventSourceList_[t];this.addEvents_(i.getEvents())}},t.prototype.unregister_=function(){for(var e=this.eventSourceList_.length,t=0;t<e;t++){var i=this.eventSourceList_[t];this.removeEvents_(i.getEvents())}},t.prototype.eventHandler_=function(e){var t=e.type,i=this.eventMap_[t];i&&i(e)},t.prototype.addEvents_=function(e){e.forEach(function(e){S(this.element_,e,this.eventHandler_,this)}.bind(this))},t.prototype.removeEvents_=function(e){e.forEach(function(e){v(this.element_,e,this.eventHandler_,this)}.bind(this))},t.prototype.cloneEvent=function(e,t){for(var i={},n=0,r=Qe.length;n<r;n++){var o=Qe[n][0];i[o]=e[o]||t[o]||Qe[n][1]}return i},t.prototype.down=function(e,t){this.fireEvent(se.POINTERDOWN,e,t)},t.prototype.move=function(e,t){this.fireEvent(se.POINTERMOVE,e,t)},t.prototype.up=function(e,t){this.fireEvent(se.POINTERUP,e,t)},t.prototype.enter=function(e,t){e.bubbles=!1,this.fireEvent(se.POINTERENTER,e,t)},t.prototype.leave=function(e,t){e.bubbles=!1,this.fireEvent(se.POINTERLEAVE,e,t)},t.prototype.over=function(e,t){e.bubbles=!0,this.fireEvent(se.POINTEROVER,e,t)},t.prototype.out=function(e,t){e.bubbles=!0,this.fireEvent(se.POINTEROUT,e,t)},t.prototype.cancel=function(e,t){this.fireEvent(se.POINTERCANCEL,e,t)},t.prototype.leaveOut=function(e,t){this.out(e,t),this.contains_(e.target,e.relatedTarget)||this.leave(e,t)},t.prototype.enterOver=function(e,t){this.over(e,t),this.contains_(e.target,e.relatedTarget)||this.enter(e,t)},t.prototype.contains_=function(e,t){return!(!e||!t)&&e.contains(t)},t.prototype.makeEvent=function(e,t,i){return new Be(e,i,t)},t.prototype.fireEvent=function(e,t,i){var n=this.makeEvent(e,t,i);this.dispatchEvent(n)},t.prototype.fireNativeEvent=function(e){var t=this.makeEvent(e.type,e,e);this.dispatchEvent(t)},t.prototype.wrapMouseEvent=function(e,t){return this.makeEvent(e,Se(t,this),t)},t.prototype.disposeInternal=function(){this.unregister_(),e.prototype.disposeInternal.call(this)},t}(x),$e=function(e){function t(t,i){e.call(this),this.map_=t,this.clickTimeoutId_,this.dragging_=!1,this.dragListenerKeys_=[],this.moveTolerance_=i?i*ee:ee,this.down_=null;var n=this.map_.getViewport();this.activePointers_=0,this.trackedTouches_={},this.pointerEventHandler_=new Je(n),this.documentPointerEventHandler_=null,this.pointerdownListenerKey_=S(this.pointerEventHandler_,se.POINTERDOWN,this.handlePointerDown_,this),this.relayedListenerKey_=S(this.pointerEventHandler_,se.POINTERMOVE,this.relayEvent_,this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.emulateClick_=function(e){var t=new ae(oe.CLICK,this.map_,e);this.dispatchEvent(t),void 0!==this.clickTimeoutId_?(clearTimeout(this.clickTimeoutId_),this.clickTimeoutId_=void 0,t=new ae(oe.DBLCLICK,this.map_,e),this.dispatchEvent(t)):this.clickTimeoutId_=setTimeout(function(){this.clickTimeoutId_=void 0;var t=new ae(oe.SINGLECLICK,this.map_,e);this.dispatchEvent(t)}.bind(this),250)},t.prototype.updateActivePointers_=function(e){var t=e;t.type==oe.POINTERUP||t.type==oe.POINTERCANCEL?delete this.trackedTouches_[t.pointerId]:t.type==oe.POINTERDOWN&&(this.trackedTouches_[t.pointerId]=!0),this.activePointers_=Object.keys(this.trackedTouches_).length},t.prototype.handlePointerUp_=function(e){this.updateActivePointers_(e);var t=new ae(oe.POINTERUP,this.map_,e);this.dispatchEvent(t),t.propagationStopped||this.dragging_||!this.isMouseActionButton_(e)||this.emulateClick_(this.down_),0===this.activePointers_&&(this.dragListenerKeys_.forEach(_),this.dragListenerKeys_.length=0,this.dragging_=!1,this.down_=null,this.documentPointerEventHandler_.dispose(),this.documentPointerEventHandler_=null)},t.prototype.isMouseActionButton_=function(e){return 0===e.button},t.prototype.handlePointerDown_=function(e){this.updateActivePointers_(e);var t=new ae(oe.POINTERDOWN,this.map_,e);this.dispatchEvent(t),this.down_=e,0===this.dragListenerKeys_.length&&(this.documentPointerEventHandler_=new Je(document),this.dragListenerKeys_.push(S(this.documentPointerEventHandler_,oe.POINTERMOVE,this.handlePointerMove_,this),S(this.documentPointerEventHandler_,oe.POINTERUP,this.handlePointerUp_,this),S(this.pointerEventHandler_,oe.POINTERCANCEL,this.handlePointerUp_,this)))},t.prototype.handlePointerMove_=function(e){if(this.isMoving_(e)){this.dragging_=!0;var t=new ae(oe.POINTERDRAG,this.map_,e,this.dragging_);this.dispatchEvent(t)}e.preventDefault()},t.prototype.relayEvent_=function(e){var t=!(!this.down_||!this.isMoving_(e));this.dispatchEvent(new ae(e.type,this.map_,e,t))},t.prototype.isMoving_=function(e){return this.dragging_||Math.abs(e.clientX-this.down_.clientX)>this.moveTolerance_||Math.abs(e.clientY-this.down_.clientY)>this.moveTolerance_},t.prototype.disposeInternal=function(){this.relayedListenerKey_&&(_(this.relayedListenerKey_),this.relayedListenerKey_=null),this.pointerdownListenerKey_&&(_(this.pointerdownListenerKey_),this.pointerdownListenerKey_=null),this.dragListenerKeys_.forEach(_),this.dragListenerKeys_.length=0,this.documentPointerEventHandler_&&(this.documentPointerEventHandler_.dispose(),this.documentPointerEventHandler_=null),this.pointerEventHandler_&&(this.pointerEventHandler_.dispose(),this.pointerEventHandler_=null),e.prototype.disposeInternal.call(this)},t}(x),et={POSTRENDER:"postrender",MOVESTART:"movestart",MOVEEND:"moveend"},tt={LAYERGROUP:"layergroup",SIZE:"size",TARGET:"target",VIEW:"view"},it="postcompose",nt="precompose",rt="render",ot="rendercomplete",at={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4,ABORT:5};function st(e,t){if(!e)throw new a(t)}var ct=function(e,t){this.priorityFunction_=e,this.keyFunction_=t,this.elements_=[],this.priorities_=[],this.queuedElements_={}};ct.prototype.clear=function(){this.elements_.length=0,this.priorities_.length=0,u(this.queuedElements_)},ct.prototype.dequeue=function(){var e=this.elements_,t=this.priorities_,i=e[0];1==e.length?(e.length=0,t.length=0):(e[0]=e.pop(),t[0]=t.pop(),this.siftUp_(0));var n=this.keyFunction_(i);return delete this.queuedElements_[n],i},ct.prototype.enqueue=function(e){st(!(this.keyFunction_(e)in this.queuedElements_),31);var t=this.priorityFunction_(e);return t!=1/0&&(this.elements_.push(e),this.priorities_.push(t),this.queuedElements_[this.keyFunction_(e)]=!0,this.siftDown_(0,this.elements_.length-1),!0)},ct.prototype.getCount=function(){return this.elements_.length},ct.prototype.getLeftChildIndex_=function(e){return 2*e+1},ct.prototype.getRightChildIndex_=function(e){return 2*e+2},ct.prototype.getParentIndex_=function(e){return e-1>>1},ct.prototype.heapify_=function(){var e;for(e=(this.elements_.length>>1)-1;e>=0;e--)this.siftUp_(e)},ct.prototype.isEmpty=function(){return 0===this.elements_.length},ct.prototype.isKeyQueued=function(e){return e in this.queuedElements_},ct.prototype.isQueued=function(e){return this.isKeyQueued(this.keyFunction_(e))},ct.prototype.siftUp_=function(e){for(var t=this.elements_,i=this.priorities_,n=t.length,r=t[e],o=i[e],a=e;e<n>>1;){var s=this.getLeftChildIndex_(e),c=this.getRightChildIndex_(e),l=c<n&&i[c]<i[s]?c:s;t[e]=t[l],i[e]=i[l],e=l}t[e]=r,i[e]=o,this.siftDown_(a,e)},ct.prototype.siftDown_=function(e,t){for(var i=this.elements_,n=this.priorities_,r=i[t],o=n[t];t>e;){var a=this.getParentIndex_(t);if(!(n[a]>o))break;i[t]=i[a],n[t]=n[a],t=a}i[t]=r,n[t]=o},ct.prototype.reprioritize=function(){var e,t,i,n=this.priorityFunction_,r=this.elements_,o=this.priorities_,a=0,s=r.length;for(t=0;t<s;++t)(i=n(e=r[t]))==1/0?delete this.queuedElements_[this.keyFunction_(e)]:(o[a]=i,r[a++]=e);r.length=a,o.length=a,this.heapify_()};var lt=function(e){function t(t,i){e.call(this,(function(e){return t.apply(null,e)}),(function(e){return e[0].getKey()})),this.tileChangeCallback_=i,this.tilesLoading_=0,this.tilesLoadingKeys_={}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.enqueue=function(t){var i=e.prototype.enqueue.call(this,t);return i&&S(t[0],E.CHANGE,this.handleTileChange,this),i},t.prototype.getTilesLoading=function(){return this.tilesLoading_},t.prototype.handleTileChange=function(e){var t=e.target,i=t.getState();if(i===at.LOADED||i===at.ERROR||i===at.EMPTY||i===at.ABORT){v(t,E.CHANGE,this.handleTileChange,this);var n=t.getKey();n in this.tilesLoadingKeys_&&(delete this.tilesLoadingKeys_[n],--this.tilesLoading_),this.tileChangeCallback_()}},t.prototype.loadMoreTiles=function(e,t){for(var i,n,r,o=0,a=!1;this.tilesLoading_<e&&o<t&&this.getCount()>0;)r=(n=this.dequeue()[0]).getKey(),(i=n.getState())===at.ABORT?a=!0:i!==at.IDLE||r in this.tilesLoadingKeys_||(this.tilesLoadingKeys_[r]=!0,++this.tilesLoading_,++o,n.load());0===o&&a&&this.tileChangeCallback_()},t}(ct),ut=42,ht=256;function dt(e,t,i){return Math.min(Math.max(e,t),i)}var pt="cosh"in Math?Math.cosh:function(e){var t=Math.exp(e);return(t+1/t)/2};function mt(e,t,i,n,r,o){var a=r-i,s=o-n;if(0!==a||0!==s){var c=((e-i)*a+(t-n)*s)/(a*a+s*s);c>1?(i=r,n=o):c>0&&(i+=a*c,n+=s*c)}return ft(e,t,i,n)}function ft(e,t,i,n){var r=i-e,o=n-t;return r*r+o*o}function gt(e){return e*Math.PI/180}function St(e,t){var i=e%t;return i*t<0?i+t:i}function yt(e,t,i){return e+i*(t-e)}function vt(e){return e}function _t(e,t){return void 0!==e?0:void 0}function Ct(e,t){return void 0!==e?e+t:void 0}var Tt=0,Dt=1,At="center",It="resolution",Pt="rotation";function Rt(e,t){return e[0]+=t[0],e[1]+=t[1],e}function xt(e,t){var i,n,r=e[0],o=e[1],a=t[0],s=t[1],c=a[0],l=a[1],u=s[0],h=s[1],d=u-c,p=h-l,m=0===d&&0===p?0:(d*(r-c)+p*(o-l))/(d*d+p*p||0);return m<=0?(i=c,n=l):m>=1?(i=u,n=h):(i=c+m*d,n=l+m*p),[i,n]}function Et(e,t){for(var i=!0,n=e.length-1;n>=0;--n)if(e[n]!=t[n]){i=!1;break}return i}function bt(e,t){var i=Math.cos(t),n=Math.sin(t),r=e[0]*i-e[1]*n,o=e[1]*i+e[0]*n;return e[0]=r,e[1]=o,e}function Ot(e,t){return e[0]*=t,e[1]*=t,e}function qt(e,t){var i=e[0]-t[0],n=e[1]-t[1];return i*i+n*n}function Ft(e,t){return Math.sqrt(qt(e,t))}function Mt(e,t){return qt(e,xt(e,t))}function Lt(e){return Math.pow(e,3)}function wt(e){return 1-Lt(1-e)}function Nt(e){return 3*e*e-2*e*e*e}function Bt(e){return e}var Vt={BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",TOP_LEFT:"top-left",TOP_RIGHT:"top-right"},kt={UNKNOWN:0,INTERSECTING:1,ABOVE:2,RIGHT:4,BELOW:8,LEFT:16};function Gt(e){for(var t=[1/0,1/0,-1/0,-1/0],i=0,n=e.length;i<n;++i)ii(t,e[i]);return t}function Ut(e,t,i){return i?(i[0]=e[0]-t,i[1]=e[1]-t,i[2]=e[2]+t,i[3]=e[3]+t,i):[e[0]-t,e[1]-t,e[2]+t,e[3]+t]}function Wt(e,t){return t?(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t):e.slice()}function zt(e,t,i){var n,r;return(n=t<e[0]?e[0]-t:e[2]<t?t-e[2]:0)*n+(r=i<e[1]?e[1]-i:e[3]<i?i-e[3]:0)*r}function Ht(e,t){return Xt(e,t[0],t[1])}function jt(e,t){return e[0]<=t[0]&&t[2]<=e[2]&&e[1]<=t[1]&&t[3]<=e[3]}function Xt(e,t,i){return e[0]<=t&&t<=e[2]&&e[1]<=i&&i<=e[3]}function Yt(e,t){var i=e[0],n=e[1],r=e[2],o=e[3],a=t[0],s=t[1],c=kt.UNKNOWN;return a<i?c|=kt.LEFT:a>r&&(c|=kt.RIGHT),s<n?c|=kt.BELOW:s>o&&(c|=kt.ABOVE),c===kt.UNKNOWN&&(c=kt.INTERSECTING),c}function Kt(e,t,i,n,r){return r?(r[0]=e,r[1]=t,r[2]=i,r[3]=n,r):[e,t,i,n]}function Zt(e){return Kt(1/0,1/0,-1/0,-1/0,e)}function Qt(e,t){var i=e[0],n=e[1];return Kt(i,n,i,n,t)}function Jt(e,t){return function(e,t){for(var i=0,n=t.length;i<n;++i)ii(e,t[i]);return e}(Zt(t),e)}function $t(e,t,i,n,r){return ni(Zt(r),e,t,i,n)}function ei(e,t){return e[0]==t[0]&&e[2]==t[2]&&e[1]==t[1]&&e[3]==t[3]}function ti(e,t){return t[0]<e[0]&&(e[0]=t[0]),t[2]>e[2]&&(e[2]=t[2]),t[1]<e[1]&&(e[1]=t[1]),t[3]>e[3]&&(e[3]=t[3]),e}function ii(e,t){t[0]<e[0]&&(e[0]=t[0]),t[0]>e[2]&&(e[2]=t[0]),t[1]<e[1]&&(e[1]=t[1]),t[1]>e[3]&&(e[3]=t[1])}function ni(e,t,i,n,r){for(;i<n;i+=r)ri(e,t[i],t[i+1]);return e}function ri(e,t,i){e[0]=Math.min(e[0],t),e[1]=Math.min(e[1],i),e[2]=Math.max(e[2],t),e[3]=Math.max(e[3],i)}function oi(e,t,i){var n;return(n=t.call(i,si(e)))?n:(n=t.call(i,ci(e)))?n:(n=t.call(i,fi(e)))?n:(n=t.call(i,mi(e)))||!1}function ai(e){var t=0;return yi(e)||(t=gi(e)*di(e)),t}function si(e){return[e[0],e[1]]}function ci(e){return[e[2],e[1]]}function li(e){return[(e[0]+e[2])/2,(e[1]+e[3])/2]}function ui(e,t){var i;return t===Vt.BOTTOM_LEFT?i=si(e):t===Vt.BOTTOM_RIGHT?i=ci(e):t===Vt.TOP_LEFT?i=mi(e):t===Vt.TOP_RIGHT?i=fi(e):st(!1,13),i}function hi(e,t,i,n,r){var o=t*n[0]/2,a=t*n[1]/2,s=Math.cos(i),c=Math.sin(i),l=o*s,u=o*c,h=a*s,d=a*c,p=e[0],m=e[1],f=p-l+d,g=p-l-d,S=p+l-d,y=p+l+d,v=m-u-h,_=m-u+h,C=m+u+h,T=m+u-h;return Kt(Math.min(f,g,S,y),Math.min(v,_,C,T),Math.max(f,g,S,y),Math.max(v,_,C,T),r)}function di(e){return e[3]-e[1]}function pi(e,t,i){var n=i||[1/0,1/0,-1/0,-1/0];return Si(e,t)?(e[0]>t[0]?n[0]=e[0]:n[0]=t[0],e[1]>t[1]?n[1]=e[1]:n[1]=t[1],e[2]<t[2]?n[2]=e[2]:n[2]=t[2],e[3]<t[3]?n[3]=e[3]:n[3]=t[3]):Zt(n),n}function mi(e){return[e[0],e[3]]}function fi(e){return[e[2],e[3]]}function gi(e){return e[2]-e[0]}function Si(e,t){return e[0]<=t[2]&&e[2]>=t[0]&&e[1]<=t[3]&&e[3]>=t[1]}function yi(e){return e[2]<e[0]||e[3]<e[1]}function vi(e,t){var i=(e[2]-e[0])/2*(t-1),n=(e[3]-e[1])/2*(t-1);e[0]-=i,e[2]+=i,e[1]-=n,e[3]+=n}var _i={POINT:"Point",LINE_STRING:"LineString",LINEAR_RING:"LinearRing",POLYGON:"Polygon",MULTI_POINT:"MultiPoint",MULTI_LINE_STRING:"MultiLineString",MULTI_POLYGON:"MultiPolygon",GEOMETRY_COLLECTION:"GeometryCollection",CIRCLE:"Circle"},Ci={XY:"XY",XYZ:"XYZ",XYM:"XYM",XYZM:"XYZM"};function Ti(e,t,i,n,r,o){for(var a=o||[],s=0,c=t;c<i;c+=n){var l=e[c],u=e[c+1];a[s++]=r[0]*l+r[2]*u+r[4],a[s++]=r[1]*l+r[3]*u+r[5]}return o&&a.length!=s&&(a.length=s),a}function Di(e,t,i,n,r,o,a){for(var s=a||[],c=0,l=t;l<i;l+=n){s[c++]=e[l]+r,s[c++]=e[l+1]+o;for(var u=l+2;u<l+n;++u)s[c++]=e[u]}return a&&s.length!=c&&(s.length=c),s}var Ai=6371008.8;function Ii(e,t,i){var n=i||Ai,r=gt(e[1]),o=gt(t[1]),a=(o-r)/2,s=gt(t[0]-e[0])/2,c=Math.sin(a)*Math.sin(a)+Math.sin(s)*Math.sin(s)*Math.cos(r)*Math.cos(o);return 2*n*Math.atan2(Math.sqrt(c),Math.sqrt(1-c))}var Pi={DEGREES:"degrees",FEET:"ft",METERS:"m",PIXELS:"pixels",TILE_PIXELS:"tile-pixels",USFEET:"us-ft"},Ri={};Ri[Pi.DEGREES]=2*Math.PI*6370997/360,Ri[Pi.FEET]=.3048,Ri[Pi.METERS]=1,Ri[Pi.USFEET]=1200/3937;var xi=function(e){this.code_=e.code,this.units_=e.units,this.extent_=void 0!==e.extent?e.extent:null,this.worldExtent_=void 0!==e.worldExtent?e.worldExtent:null,this.axisOrientation_=void 0!==e.axisOrientation?e.axisOrientation:"enu",this.global_=void 0!==e.global&&e.global,this.canWrapX_=!(!this.global_||!this.extent_),this.getPointResolutionFunc_=e.getPointResolution,this.defaultTileGrid_=null,this.metersPerUnit_=e.metersPerUnit};xi.prototype.canWrapX=function(){return this.canWrapX_},xi.prototype.getCode=function(){return this.code_},xi.prototype.getExtent=function(){return this.extent_},xi.prototype.getUnits=function(){return this.units_},xi.prototype.getMetersPerUnit=function(){return this.metersPerUnit_||Ri[this.units_]},xi.prototype.getWorldExtent=function(){return this.worldExtent_},xi.prototype.getAxisOrientation=function(){return this.axisOrientation_},xi.prototype.isGlobal=function(){return this.global_},xi.prototype.setGlobal=function(e){this.global_=e,this.canWrapX_=!(!e||!this.extent_)},xi.prototype.getDefaultTileGrid=function(){return this.defaultTileGrid_},xi.prototype.setDefaultTileGrid=function(e){this.defaultTileGrid_=e},xi.prototype.setExtent=function(e){this.extent_=e,this.canWrapX_=!(!this.global_||!e)},xi.prototype.setWorldExtent=function(e){this.worldExtent_=e},xi.prototype.setGetPointResolution=function(e){this.getPointResolutionFunc_=e},xi.prototype.getPointResolutionFunc=function(){return this.getPointResolutionFunc_};var Ei=6378137,bi=Math.PI*Ei,Oi=[-bi,-bi,bi,bi],qi=[-180,-85,180,85],Fi=function(e){function t(t){e.call(this,{code:t,units:Pi.METERS,extent:Oi,global:!0,worldExtent:qi,getPointResolution:function(e,t){return e/pt(t[1]/Ei)}})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(xi),Mi=[new Fi("EPSG:3857"),new Fi("EPSG:102100"),new Fi("EPSG:102113"),new Fi("EPSG:900913"),new Fi("urn:ogc:def:crs:EPSG:6.18:3:3857"),new Fi("urn:ogc:def:crs:EPSG::3857"),new Fi("http://www.opengis.net/gml/srs/epsg.xml#3857")];function Li(e,t,i){var n=e.length,r=i>1?i:2,o=t;void 0===o&&(o=r>2?e.slice():new Array(n));for(var a=bi,s=0;s<n;s+=r){o[s]=a*e[s]/180;var c=Ei*Math.log(Math.tan(Math.PI*(e[s+1]+90)/360));c>a?c=a:c<-a&&(c=-a),o[s+1]=c}return o}function wi(e,t,i){var n=e.length,r=i>1?i:2,o=t;void 0===o&&(o=r>2?e.slice():new Array(n));for(var a=0;a<n;a+=r)o[a]=180*e[a]/bi,o[a+1]=360*Math.atan(Math.exp(e[a+1]/Ei))/Math.PI-90;return o}var Ni,Bi,Vi,ki=[-180,-90,180,90],Gi=6378137*Math.PI/180,Ui=function(e){function t(t,i){e.call(this,{code:t,units:Pi.DEGREES,extent:ki,axisOrientation:i,global:!0,metersPerUnit:Gi,worldExtent:ki})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(xi),Wi=[new Ui("CRS:84"),new Ui("EPSG:4326","neu"),new Ui("urn:ogc:def:crs:EPSG::4326","neu"),new Ui("urn:ogc:def:crs:EPSG:6.6:4326","neu"),new Ui("urn:ogc:def:crs:OGC:1.3:CRS84"),new Ui("urn:ogc:def:crs:OGC:2:84"),new Ui("http://www.opengis.net/gml/srs/epsg.xml#4326","neu"),new Ui("urn:x-ogc:def:crs:EPSG:4326","neu")],zi={},Hi={};function ji(e,t,i){var n=e.getCode(),r=t.getCode();n in Hi||(Hi[n]={}),Hi[n][r]=i}function Xi(e,t,i){var n;if(void 0!==t){for(var r=0,o=e.length;r<o;++r)t[r]=e[r];n=t}else n=e.slice();return n}function Yi(e,t,i){if(void 0!==t&&e!==t){for(var n=0,r=e.length;n<r;++n)t[n]=e[n];e=t}return e}function Ki(e){!function(e,t){zi[e]=t}(e.getCode(),e),ji(e,e,Xi)}function Zi(e){return"string"==typeof e?zi[e]||null:e||null}function Qi(e,t,i,n){var r,o=(e=Zi(e)).getPointResolutionFunc();if(o)r=o(t,i);else if(e.getUnits()==Pi.DEGREES&&!n||n==Pi.DEGREES)r=t;else{var a=tn(e,Zi("EPSG:4326")),s=[i[0]-t/2,i[1],i[0]+t/2,i[1],i[0],i[1]-t/2,i[0],i[1]+t/2];r=(Ii((s=a(s,s,2)).slice(0,2),s.slice(2,4))+Ii(s.slice(4,6),s.slice(6,8)))/2;var c=n?Ri[n]:e.getMetersPerUnit();void 0!==c&&(r/=c)}return r}function Ji(e){!function(e){e.forEach(Ki)}(e),e.forEach((function(t){e.forEach((function(e){t!==e&&ji(t,e,Xi)}))}))}function $i(e,t){return e?"string"==typeof e?Zi(e):e:Zi(t)}function en(e,t){if(e===t)return!0;var i=e.getUnits()===t.getUnits();return e.getCode()===t.getCode()?i:tn(e,t)===Xi&&i}function tn(e,t){var i=function(e,t){var i;return e in Hi&&t in Hi[e]&&(i=Hi[e][t]),i}(e.getCode(),t.getCode());return i||(i=Yi),i}function nn(e,t){return tn(Zi(e),Zi(t))}Ji(Mi),Ji(Wi),Ni=Mi,Bi=Li,Vi=wi,Wi.forEach((function(e){Ni.forEach((function(t){ji(e,t,Bi),ji(t,e,Vi)}))}));var rn=new Array(6);function on(e){return sn(e,1,0,0,1,0,0)}function an(e,t){var i=e[0],n=e[1],r=e[2],o=e[3],a=e[4],s=e[5],c=t[0],l=t[1],u=t[2],h=t[3],d=t[4],p=t[5];return e[0]=i*c+r*l,e[1]=n*c+o*l,e[2]=i*u+r*h,e[3]=n*u+o*h,e[4]=i*d+r*p+a,e[5]=n*d+o*p+s,e}function sn(e,t,i,n,r,o,a){return e[0]=t,e[1]=i,e[2]=n,e[3]=r,e[4]=o,e[5]=a,e}function cn(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e}function ln(e,t){var i=t[0],n=t[1];return t[0]=e[0]*i+e[2]*n+e[4],t[1]=e[1]*i+e[3]*n+e[5],t}function un(e,t){var i=Math.cos(t),n=Math.sin(t);return an(e,sn(rn,i,n,-n,i,0,0))}function hn(e,t,i){return an(e,sn(rn,t,0,0,i,0,0))}function dn(e,t,i){return an(e,sn(rn,1,0,0,1,t,i))}function pn(e,t,i,n,r,o,a,s){var c=Math.sin(o),l=Math.cos(o);return e[0]=n*l,e[1]=r*c,e[2]=-n*c,e[3]=r*l,e[4]=a*n*l-s*n*c+t,e[5]=a*r*c+s*r*l+i,e}function mn(e){var t,i=(t=e)[0]*t[3]-t[1]*t[2];st(0!==i,32);var n=e[0],r=e[1],o=e[2],a=e[3],s=e[4],c=e[5];return e[0]=a/i,e[1]=-r/i,e[2]=-o/i,e[3]=n/i,e[4]=(o*c-a*s)/i,e[5]=-(n*c-r*s)/i,e}var fn=[1,0,0,1,0,0],gn=function(e){function t(){e.call(this),this.layout=Ci.XY,this.stride=2,this.flatCoordinates=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.computeExtent=function(e){return $t(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,e)},t.prototype.getCoordinates=function(){return i()},t.prototype.getFirstCoordinate=function(){return this.flatCoordinates.slice(0,this.stride)},t.prototype.getFlatCoordinates=function(){return this.flatCoordinates},t.prototype.getLastCoordinate=function(){return this.flatCoordinates.slice(this.flatCoordinates.length-this.stride)},t.prototype.getLayout=function(){return this.layout},t.prototype.getSimplifiedGeometry=function(e){if(this.simplifiedGeometryRevision!=this.getRevision()&&(u(this.simplifiedGeometryCache),this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=this.getRevision()),e<0||0!==this.simplifiedGeometryMaxMinSquaredTolerance&&e<=this.simplifiedGeometryMaxMinSquaredTolerance)return this;var t=e.toString();if(this.simplifiedGeometryCache.hasOwnProperty(t))return this.simplifiedGeometryCache[t];var i=this.getSimplifiedGeometryInternal(e);return i.getFlatCoordinates().length<this.flatCoordinates.length?(this.simplifiedGeometryCache[t]=i,i):(this.simplifiedGeometryMaxMinSquaredTolerance=e,this)},t.prototype.getSimplifiedGeometryInternal=function(e){return this},t.prototype.getStride=function(){return this.stride},t.prototype.setFlatCoordinates=function(e,t){this.stride=Sn(e),this.layout=e,this.flatCoordinates=t},t.prototype.setCoordinates=function(e,t){i()},t.prototype.setLayout=function(e,t,i){var n;if(e)n=Sn(e);else{for(var r=0;r<i;++r){if(0===t.length)return this.layout=Ci.XY,void(this.stride=2);t=t[0]}e=function(e){var t;return 2==e?t=Ci.XY:3==e?t=Ci.XYZ:4==e&&(t=Ci.XYZM),t}(n=t.length)}this.layout=e,this.stride=n},t.prototype.applyTransform=function(e){this.flatCoordinates&&(e(this.flatCoordinates,this.flatCoordinates,this.stride),this.changed())},t.prototype.rotate=function(e,t){var i=this.getFlatCoordinates();if(i){var n=this.getStride();!function(e,t,i,n,r,o,a){for(var s=a||[],c=Math.cos(r),l=Math.sin(r),u=o[0],h=o[1],d=0,p=t;p<i;p+=n){var m=e[p]-u,f=e[p+1]-h;s[d++]=u+m*c-f*l,s[d++]=h+m*l+f*c;for(var g=p+2;g<p+n;++g)s[d++]=e[g]}a&&s.length!=d&&(s.length=d)}(i,0,i.length,n,e,t,i),this.changed()}},t.prototype.scale=function(e,t,i){var n=t;void 0===n&&(n=e);var r=i;r||(r=li(this.getExtent()));var o=this.getFlatCoordinates();if(o){var a=this.getStride();!function(e,t,i,n,r,o,a,s){for(var c=s||[],l=a[0],u=a[1],h=0,d=t;d<i;d+=n){var p=e[d]-l,m=e[d+1]-u;c[h++]=l+r*p,c[h++]=u+o*m;for(var f=d+2;f<d+n;++f)c[h++]=e[f]}s&&c.length!=h&&(c.length=h)}(o,0,o.length,a,e,n,r,o),this.changed()}},t.prototype.translate=function(e,t){var i=this.getFlatCoordinates();if(i){var n=this.getStride();Di(i,0,i.length,n,e,t,i),this.changed()}},t}(function(e){function t(){e.call(this),this.extent_=[1/0,1/0,-1/0,-1/0],this.extentRevision_=-1,this.simplifiedGeometryCache={},this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=0}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clone=function(){return i()},t.prototype.closestPointXY=function(e,t,n,r){return i()},t.prototype.containsXY=function(e,t){return!1},t.prototype.getClosestPoint=function(e,t){var i=t||[NaN,NaN];return this.closestPointXY(e[0],e[1],i,1/0),i},t.prototype.intersectsCoordinate=function(e){return this.containsXY(e[0],e[1])},t.prototype.computeExtent=function(e){return i()},t.prototype.getExtent=function(e){return this.extentRevision_!=this.getRevision()&&(this.extent_=this.computeExtent(this.extent_),this.extentRevision_=this.getRevision()),function(e,t){return t?(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t):e}(this.extent_,e)},t.prototype.rotate=function(e,t){i()},t.prototype.scale=function(e,t,n){i()},t.prototype.simplify=function(e){return this.getSimplifiedGeometry(e*e)},t.prototype.getSimplifiedGeometry=function(e){return i()},t.prototype.getType=function(){return i()},t.prototype.applyTransform=function(e){i()},t.prototype.intersectsExtent=function(e){return i()},t.prototype.translate=function(e,t){i()},t.prototype.transform=function(e,t){var i=Zi(e),n=i.getUnits()==Pi.TILE_PIXELS?function(e,n,r){var o=i.getExtent(),a=i.getWorldExtent(),s=di(a)/di(o);return pn(fn,a[0],a[3],s,-s,0,0,0),Ti(e,0,e.length,r,fn,n),nn(i,t)(e,n,r)}:nn(i,t);return this.applyTransform(n),this},t}(q));function Sn(e){var t;return e==Ci.XY?t=2:e==Ci.XYZ||e==Ci.XYM?t=3:e==Ci.XYZM&&(t=4),t}function yn(e,t,i,n){for(var r=0,o=e[i-n],a=e[i-n+1];t<i;t+=n){var s=e[t],c=e[t+1];r+=a*s-o*c,o=s,a=c}return r/2}function vn(e,t,i,n){for(var r=0,o=0,a=i.length;o<a;++o){var s=i[o];r+=yn(e,t,s,n),t=s}return r}function _n(e,t,i,n,r,o,a){var s,c=e[t],l=e[t+1],u=e[i]-c,h=e[i+1]-l;if(0===u&&0===h)s=t;else{var d=((r-c)*u+(o-l)*h)/(u*u+h*h);if(d>1)s=i;else{if(d>0){for(var p=0;p<n;++p)a[p]=yt(e[t+p],e[i+p],d);return void(a.length=n)}s=t}}for(var m=0;m<n;++m)a[m]=e[s+m];a.length=n}function Cn(e,t,i,n,r){var o=e[t],a=e[t+1];for(t+=n;t<i;t+=n){var s=e[t],c=e[t+1],l=ft(o,a,s,c);l>r&&(r=l),o=s,a=c}return r}function Tn(e,t,i,n,r){for(var o=0,a=i.length;o<a;++o){var s=i[o];r=Cn(e,t,s,n,r),t=s}return r}function Dn(e,t,i,n,r,o,a,s,c,l,u){if(t==i)return l;var h,d;if(0===r){if((d=ft(a,s,e[t],e[t+1]))<l){for(h=0;h<n;++h)c[h]=e[t+h];return c.length=n,d}return l}for(var p=u||[NaN,NaN],m=t+n;m<i;)if(_n(e,m-n,m,n,a,s,p),(d=ft(a,s,p[0],p[1]))<l){for(l=d,h=0;h<n;++h)c[h]=p[h];c.length=n,m+=n}else m+=n*Math.max((Math.sqrt(d)-Math.sqrt(l))/r|0,1);if(o&&(_n(e,i-n,t,n,a,s,p),(d=ft(a,s,p[0],p[1]))<l)){for(l=d,h=0;h<n;++h)c[h]=p[h];c.length=n}return l}function An(e,t,i,n,r,o,a,s,c,l,u){for(var h=u||[NaN,NaN],d=0,p=i.length;d<p;++d){var m=i[d];l=Dn(e,t,m,n,r,o,a,s,c,l,h),t=m}return l}function In(e,t,i,n){for(var r=0,o=i.length;r<o;++r)e[t++]=i[r];return t}function Pn(e,t,i,n){for(var r=0,o=i.length;r<o;++r)for(var a=i[r],s=0;s<n;++s)e[t++]=a[s];return t}function Rn(e,t,i,n,r){for(var o=r||[],a=0,s=0,c=i.length;s<c;++s){var l=Pn(e,t,i[s],n);o[a++]=l,t=l}return o.length=a,o}function xn(e,t,i,n,r){for(var o=void 0!==r?r:[],a=0,s=t;s<i;s+=n)o[a++]=e.slice(s,s+n);return o.length=a,o}function En(e,t,i,n,r){for(var o=void 0!==r?r:[],a=0,s=0,c=i.length;s<c;++s){var l=i[s];o[a++]=xn(e,t,l,n,o[a]),t=l}return o.length=a,o}function bn(e,t,i,n,r){for(var o=void 0!==r?r:[],a=0,s=0,c=i.length;s<c;++s){var l=i[s];o[a++]=En(e,t,l,n,o[a]),t=l[l.length-1]}return o.length=a,o}function On(e,t,i,n,r,o,a){var s=(i-t)/n;if(s<3){for(;t<i;t+=n)o[a++]=e[t],o[a++]=e[t+1];return a}var c=new Array(s);c[0]=1,c[s-1]=1;for(var l=[t,i-n],u=0;l.length>0;){for(var h=l.pop(),d=l.pop(),p=0,m=e[d],f=e[d+1],g=e[h],S=e[h+1],y=d+n;y<h;y+=n){var v=mt(e[y],e[y+1],m,f,g,S);v>p&&(u=y,p=v)}p>r&&(c[(u-t)/n]=1,d+n<u&&l.push(d,u),u+n<h&&l.push(u,h))}for(var _=0;_<s;++_)c[_]&&(o[a++]=e[t+_*n],o[a++]=e[t+_*n+1]);return a}function qn(e,t){return t*Math.round(e/t)}function Fn(e,t,i,n,r,o,a){if(t==i)return a;var s,c,l=qn(e[t],r),u=qn(e[t+1],r);t+=n,o[a++]=l,o[a++]=u;do{if(s=qn(e[t],r),c=qn(e[t+1],r),(t+=n)==i)return o[a++]=s,o[a++]=c,a}while(s==l&&c==u);for(;t<i;){var h=qn(e[t],r),d=qn(e[t+1],r);if(t+=n,h!=s||d!=c){var p=s-l,m=c-u,f=h-l,g=d-u;p*g==m*f&&(p<0&&f<p||p==f||p>0&&f>p)&&(m<0&&g<m||m==g||m>0&&g>m)?(s=h,c=d):(o[a++]=s,o[a++]=c,l=s,u=c,s=h,c=d)}}return o[a++]=s,o[a++]=c,a}function Mn(e,t,i,n,r,o,a,s){for(var c=0,l=i.length;c<l;++c){var u=i[c];a=Fn(e,t,u,n,r,o,a),s.push(a),t=u}return a}var Ln=function(e){function t(t,i){e.call(this),this.maxDelta_=-1,this.maxDeltaRevision_=-1,void 0===i||Array.isArray(t[0])?this.setCoordinates(t,i):this.setFlatCoordinates(i,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clone=function(){return new t(this.flatCoordinates.slice(),this.layout)},t.prototype.closestPointXY=function(e,t,i,n){return n<zt(this.getExtent(),e,t)?n:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(Cn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),Dn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,this.maxDelta_,!0,e,t,i,n))},t.prototype.getArea=function(){return yn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},t.prototype.getCoordinates=function(){return xn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},t.prototype.getSimplifiedGeometryInternal=function(e){var i=[];return i.length=On(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,e,i,0),new t(i,Ci.XY)},t.prototype.getType=function(){return _i.LINEAR_RING},t.prototype.intersectsExtent=function(e){return!1},t.prototype.setCoordinates=function(e,t){this.setLayout(t,e,1),this.flatCoordinates||(this.flatCoordinates=[]),this.flatCoordinates.length=Pn(this.flatCoordinates,0,e,this.stride),this.changed()},t}(gn),wn=function(e){function t(t,i){e.call(this),this.setCoordinates(t,i)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clone=function(){return new t(this.flatCoordinates.slice(),this.layout)},t.prototype.closestPointXY=function(e,t,i,n){var r=this.flatCoordinates,o=ft(e,t,r[0],r[1]);if(o<n){for(var a=this.stride,s=0;s<a;++s)i[s]=r[s];return i.length=a,o}return n},t.prototype.getCoordinates=function(){return this.flatCoordinates?this.flatCoordinates.slice():[]},t.prototype.computeExtent=function(e){return Qt(this.flatCoordinates,e)},t.prototype.getType=function(){return _i.POINT},t.prototype.intersectsExtent=function(e){return Xt(e,this.flatCoordinates[0],this.flatCoordinates[1])},t.prototype.setCoordinates=function(e,t){this.setLayout(t,e,0),this.flatCoordinates||(this.flatCoordinates=[]),this.flatCoordinates.length=In(this.flatCoordinates,0,e,this.stride),this.changed()},t}(gn);function Nn(e,t,i,n,r){return!oi(r,(function(r){return!Bn(e,t,i,n,r[0],r[1])}))}function Bn(e,t,i,n,r,o){for(var a=0,s=e[i-n],c=e[i-n+1];t<i;t+=n){var l=e[t],u=e[t+1];c<=o?u>o&&(l-s)*(o-c)-(r-s)*(u-c)>0&&a++:u<=o&&(l-s)*(o-c)-(r-s)*(u-c)<0&&a--,s=l,c=u}return 0!==a}function Vn(e,t,i,n,r,o){if(0===i.length)return!1;if(!Bn(e,t,i[0],n,r,o))return!1;for(var a=1,s=i.length;a<s;++a)if(Bn(e,i[a-1],i[a],n,r,o))return!1;return!0}function kn(e,t,i,n,r,o,a){for(var s,c,l,u,h,d,p,m=r[o+1],f=[],g=0,S=i.length;g<S;++g){var y=i[g];for(u=e[y-n],d=e[y-n+1],s=t;s<y;s+=n)h=e[s],p=e[s+1],(m<=d&&p<=m||d<=m&&m<=p)&&(l=(m-d)/(p-d)*(h-u)+u,f.push(l)),u=h,d=p}var v=NaN,_=-1/0;for(f.sort(Ve),u=f[0],s=1,c=f.length;s<c;++s){h=f[s];var C=Math.abs(h-u);C>_&&Vn(e,t,i,n,l=(u+h)/2,m)&&(v=l,_=C),u=h}return isNaN(v)&&(v=r[o]),a?(a.push(v,m,_),a):[v,m,_]}function Gn(e,t,i,n,r,o){for(var a,s=[e[t],e[t+1]],c=[];t+n<i;t+=n){if(c[0]=e[t+n],c[1]=e[t+n+1],a=r.call(o,s,c))return a;s[0]=c[0],s[1]=c[1]}return!1}function Un(e,t,i,n,r){var o=ni([1/0,1/0,-1/0,-1/0],e,t,i,n);return!!Si(r,o)&&(!!jt(r,o)||o[0]>=r[0]&&o[2]<=r[2]||o[1]>=r[1]&&o[3]<=r[3]||Gn(e,t,i,n,(function(e,t){return function(e,t,i){var n=!1,r=Yt(e,t),o=Yt(e,i);if(r===kt.INTERSECTING||o===kt.INTERSECTING)n=!0;else{var a,s,c=e[0],l=e[1],u=e[2],h=e[3],d=t[0],p=t[1],m=i[0],f=i[1],g=(f-p)/(m-d);o&kt.ABOVE&&!(r&kt.ABOVE)&&(n=(a=m-(f-h)/g)>=c&&a<=u),n||!(o&kt.RIGHT)||r&kt.RIGHT||(n=(s=f-(m-u)*g)>=l&&s<=h),n||!(o&kt.BELOW)||r&kt.BELOW||(n=(a=m-(f-l)/g)>=c&&a<=u),n||!(o&kt.LEFT)||r&kt.LEFT||(n=(s=f-(m-c)*g)>=l&&s<=h)}return n}(r,e,t)})))}function Wn(e,t,i,n,r){if(!function(e,t,i,n,r){return!!(Un(e,t,i,n,r)||Bn(e,t,i,n,r[0],r[1])||Bn(e,t,i,n,r[0],r[3])||Bn(e,t,i,n,r[2],r[1])||Bn(e,t,i,n,r[2],r[3]))}(e,t,i[0],n,r))return!1;if(1===i.length)return!0;for(var o=1,a=i.length;o<a;++o)if(Nn(e,i[o-1],i[o],n,r)&&!Un(e,i[o-1],i[o],n,r))return!1;return!0}function zn(e,t,i,n){for(;t<i-n;){for(var r=0;r<n;++r){var o=e[t+r];e[t+r]=e[i-n+r],e[i-n+r]=o}t+=n,i-=n}}function Hn(e,t,i,n){for(var r=0,o=e[i-n],a=e[i-n+1];t<i;t+=n){var s=e[t],c=e[t+1];r+=(s-o)*(c+a),o=s,a=c}return r>0}function jn(e,t,i,n,r){for(var o=void 0!==r&&r,a=0,s=i.length;a<s;++a){var c=i[a],l=Hn(e,t,c,n);if(0===a){if(o&&l||!o&&!l)return!1}else if(o&&!l||!o&&l)return!1;t=c}return!0}function Xn(e,t,i,n,r){for(var o=void 0!==r&&r,a=0,s=i.length;a<s;++a){var c=i[a],l=Hn(e,t,c,n);(0===a?o&&l||!o&&!l:o&&!l||!o&&l)&&zn(e,t,c,n),t=c}return t}function Yn(e,t,i,n,r){for(var o=0,a=i.length;o<a;++o)t=Xn(e,t,i[o],n,r);return t}var Kn=function(e){function t(t,i,n){e.call(this),this.ends_=[],this.flatInteriorPointRevision_=-1,this.flatInteriorPoint_=null,this.maxDelta_=-1,this.maxDeltaRevision_=-1,this.orientedRevision_=-1,this.orientedFlatCoordinates_=null,void 0!==i&&n?(this.setFlatCoordinates(i,t),this.ends_=n):this.setCoordinates(t,i)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.appendLinearRing=function(e){this.flatCoordinates?We(this.flatCoordinates,e.getFlatCoordinates()):this.flatCoordinates=e.getFlatCoordinates().slice(),this.ends_.push(this.flatCoordinates.length),this.changed()},t.prototype.clone=function(){return new t(this.flatCoordinates.slice(),this.layout,this.ends_.slice())},t.prototype.closestPointXY=function(e,t,i,n){return n<zt(this.getExtent(),e,t)?n:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(Tn(this.flatCoordinates,0,this.ends_,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),An(this.flatCoordinates,0,this.ends_,this.stride,this.maxDelta_,!0,e,t,i,n))},t.prototype.containsXY=function(e,t){return Vn(this.getOrientedFlatCoordinates(),0,this.ends_,this.stride,e,t)},t.prototype.getArea=function(){return vn(this.getOrientedFlatCoordinates(),0,this.ends_,this.stride)},t.prototype.getCoordinates=function(e){var t;return void 0!==e?Xn(t=this.getOrientedFlatCoordinates().slice(),0,this.ends_,this.stride,e):t=this.flatCoordinates,En(t,0,this.ends_,this.stride)},t.prototype.getEnds=function(){return this.ends_},t.prototype.getFlatInteriorPoint=function(){if(this.flatInteriorPointRevision_!=this.getRevision()){var e=li(this.getExtent());this.flatInteriorPoint_=kn(this.getOrientedFlatCoordinates(),0,this.ends_,this.stride,e,0),this.flatInteriorPointRevision_=this.getRevision()}return this.flatInteriorPoint_},t.prototype.getInteriorPoint=function(){return new wn(this.getFlatInteriorPoint(),Ci.XYM)},t.prototype.getLinearRingCount=function(){return this.ends_.length},t.prototype.getLinearRing=function(e){return e<0||this.ends_.length<=e?null:new Ln(this.flatCoordinates.slice(0===e?0:this.ends_[e-1],this.ends_[e]),this.layout)},t.prototype.getLinearRings=function(){for(var e=this.layout,t=this.flatCoordinates,i=this.ends_,n=[],r=0,o=0,a=i.length;o<a;++o){var s=i[o],c=new Ln(t.slice(r,s),e);n.push(c),r=s}return n},t.prototype.getOrientedFlatCoordinates=function(){if(this.orientedRevision_!=this.getRevision()){var e=this.flatCoordinates;jn(e,0,this.ends_,this.stride)?this.orientedFlatCoordinates_=e:(this.orientedFlatCoordinates_=e.slice(),this.orientedFlatCoordinates_.length=Xn(this.orientedFlatCoordinates_,0,this.ends_,this.stride)),this.orientedRevision_=this.getRevision()}return this.orientedFlatCoordinates_},t.prototype.getSimplifiedGeometryInternal=function(e){var i=[],n=[];return i.length=Mn(this.flatCoordinates,0,this.ends_,this.stride,Math.sqrt(e),i,0,n),new t(i,Ci.XY,n)},t.prototype.getType=function(){return _i.POLYGON},t.prototype.intersectsExtent=function(e){return Wn(this.getOrientedFlatCoordinates(),0,this.ends_,this.stride,e)},t.prototype.setCoordinates=function(e,t){this.setLayout(t,e,2),this.flatCoordinates||(this.flatCoordinates=[]);var i=Rn(this.flatCoordinates,0,e,this.stride,this.ends_);this.flatCoordinates.length=0===i.length?0:i[i.length-1],this.changed()},t}(gn);function Zn(e){var t=e[0],i=e[1],n=e[2],r=e[3],o=[t,i,t,r,n,r,n,i,t,i];return new Kn(o,Ci.XY,[o.length])}function Qn(e,t,i){for(var n=t||32,r=e.getStride(),o=e.getLayout(),a=e.getCenter(),s=r*(n+1),c=new Array(s),l=0;l<s;l+=r){c[l]=0,c[l+1]=0;for(var u=2;u<r;u++)c[l+u]=a[u]}var h=[c.length],d=new Kn(c,o,h);return Jn(d,a,e.getRadius(),i),d}function Jn(e,t,i,n){for(var r=e.getFlatCoordinates(),o=e.getStride(),a=r.length/o-1,s=n||0,c=0;c<=a;++c){var l=c*o,u=s+2*St(c,a)*Math.PI/a;r[l]=t[0]+i*Math.cos(u),r[l+1]=t[1]+i*Math.sin(u)}e.changed()}var $n=0,er=function(e){function t(t){e.call(this);var i=l({},t);this.hints_=[0,0],this.animations_=[],this.updateAnimationKey_,this.updateAnimations_=this.updateAnimations_.bind(this),this.projection_=$i(i.projection,"EPSG:3857"),this.applyOptions_(i)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.applyOptions_=function(e){var t={};t[At]=void 0!==e.center?e.center:null;var i=function(e){var t,i,n,r=void 0!==e.minZoom?e.minZoom:$n,o=void 0!==e.maxZoom?e.maxZoom:28,a=void 0!==e.zoomFactor?e.zoomFactor:2;if(void 0!==e.resolutions){var s=e.resolutions;i=s[r],n=void 0!==s[o]?s[o]:s[s.length-1],t=function(e){return function(t,i,n){if(void 0!==t){var r=Ge(e,t,n);r=dt(r+i,0,e.length-1);var o=Math.floor(r);if(r!=o&&o<e.length-1){var a=e[o]/e[o+1];return e[o]/Math.pow(a,r-o)}return e[o]}}}(s)}else{var c=$i(e.projection,"EPSG:3857"),l=c.getExtent(),u=(l?Math.max(gi(l),di(l)):360*Ri[Pi.DEGREES]/c.getMetersPerUnit())/ht/Math.pow(2,$n),h=u/Math.pow(2,28-$n);void 0!==(i=e.maxResolution)?r=0:i=u/Math.pow(a,r),void 0===(n=e.minResolution)&&(n=void 0!==e.maxZoom?void 0!==e.maxResolution?i/Math.pow(a,o):u/Math.pow(a,o):h),o=r+Math.floor(Math.log(i/n)/Math.log(a)),n=i/Math.pow(a,o-r),t=function(e,t,i){return function(n,r,o){if(void 0!==n){var a=-o/2+.5,s=Math.floor(Math.log(t/n)/Math.log(e)+a),c=Math.max(s+r,0);return void 0!==i&&(c=Math.min(c,i)),t/Math.pow(e,c)}}}(a,i,o-r)}return{constraint:t,maxResolution:i,minResolution:n,minZoom:r,zoomFactor:a}}(e);this.maxResolution_=i.maxResolution,this.minResolution_=i.minResolution,this.zoomFactor_=i.zoomFactor,this.resolutions_=e.resolutions,this.minZoom_=i.minZoom;var n=function(e){return void 0!==e.extent?(t=e.extent,function(e){return e?[dt(e[0],t[0],t[2]),dt(e[1],t[1],t[3])]:void 0}):vt;var t}(e),r=i.constraint,o=function(e){if(void 0===e.enableRotation||e.enableRotation){var t=e.constrainRotation;return void 0===t||!0===t?(o=r||gt(5),function(e,t){return void 0!==e?Math.abs(e+t)<=o?0:e+t:void 0}):!1===t?Ct:"number"==typeof t?(i=t,n=2*Math.PI/i,function(e,t){return void 0!==e?e=Math.floor((e+t)/n+.5)*n:void 0}):Ct}return _t;var i,n,r,o}(e);this.constraints_={center:n,resolution:r,rotation:o},void 0!==e.resolution?t[It]=e.resolution:void 0!==e.zoom&&(t[It]=this.constrainResolution(this.maxResolution_,e.zoom-this.minZoom_),this.resolutions_&&(t[It]=dt(Number(this.getResolution()||t[It]),this.minResolution_,this.maxResolution_))),t[Pt]=void 0!==e.rotation?e.rotation:0,this.setProperties(t),this.options_=e},t.prototype.getUpdatedOptions_=function(e){var t=l({},this.options_);return void 0!==t.resolution?t.resolution=this.getResolution():t.zoom=this.getZoom(),t.center=this.getCenter(),t.rotation=this.getRotation(),l({},t,e)},t.prototype.animate=function(e){var t,i=arguments,n=arguments.length;if(n>1&&"function"==typeof arguments[n-1]&&(t=arguments[n-1],--n),!this.isDef()){var r=arguments[n-1];return r.center&&this.setCenter(r.center),void 0!==r.zoom&&this.setZoom(r.zoom),void 0!==r.rotation&&this.setRotation(r.rotation),void(t&&tr(t,!0))}for(var o=Date.now(),a=this.getCenter().slice(),s=this.getResolution(),c=this.getRotation(),l=[],u=0;u<n;++u){var h=i[u],d={start:o,complete:!1,anchor:h.anchor,duration:void 0!==h.duration?h.duration:1e3,easing:h.easing||Nt};if(h.center&&(d.sourceCenter=a,d.targetCenter=h.center,a=d.targetCenter),void 0!==h.zoom?(d.sourceResolution=s,d.targetResolution=this.constrainResolution(this.maxResolution_,h.zoom-this.minZoom_,0),s=d.targetResolution):h.resolution&&(d.sourceResolution=s,d.targetResolution=h.resolution,s=d.targetResolution),void 0!==h.rotation){d.sourceRotation=c;var p=St(h.rotation-c+Math.PI,2*Math.PI)-Math.PI;d.targetRotation=c+p,c=d.targetRotation}d.callback=t,ir(d)?d.complete=!0:o+=d.duration,l.push(d)}this.animations_.push(l),this.setHint(Tt,1),this.updateAnimations_()},t.prototype.getAnimating=function(){return this.hints_[Tt]>0},t.prototype.getInteracting=function(){return this.hints_[Dt]>0},t.prototype.cancelAnimations=function(){this.setHint(Tt,-this.hints_[Tt]);for(var e=0,t=this.animations_.length;e<t;++e){var i=this.animations_[e];i[0].callback&&tr(i[0].callback,!1)}this.animations_.length=0},t.prototype.updateAnimations_=function(){if(void 0!==this.updateAnimationKey_&&(cancelAnimationFrame(this.updateAnimationKey_),this.updateAnimationKey_=void 0),this.getAnimating()){for(var e=Date.now(),t=!1,i=this.animations_.length-1;i>=0;--i){for(var n=this.animations_[i],r=!0,o=0,a=n.length;o<a;++o){var s=n[o];if(!s.complete){var c=e-s.start,l=s.duration>0?c/s.duration:1;l>=1?(s.complete=!0,l=1):r=!1;var u=s.easing(l);if(s.sourceCenter){var h=s.sourceCenter[0],d=s.sourceCenter[1],p=h+u*(s.targetCenter[0]-h),m=d+u*(s.targetCenter[1]-d);this.set(At,[p,m])}if(s.sourceResolution&&s.targetResolution){var f=1===u?s.targetResolution:s.sourceResolution+u*(s.targetResolution-s.sourceResolution);s.anchor&&this.set(At,this.calculateCenterZoom(f,s.anchor)),this.set(It,f)}if(void 0!==s.sourceRotation&&void 0!==s.targetRotation){var g=1===u?St(s.targetRotation+Math.PI,2*Math.PI)-Math.PI:s.sourceRotation+u*(s.targetRotation-s.sourceRotation);s.anchor&&this.set(At,this.calculateCenterRotate(g,s.anchor)),this.set(Pt,g)}if(t=!0,!s.complete)break}}if(r){this.animations_[i]=null,this.setHint(Tt,-1);var S=n[0].callback;S&&tr(S,!0)}}this.animations_=this.animations_.filter(Boolean),t&&void 0===this.updateAnimationKey_&&(this.updateAnimationKey_=requestAnimationFrame(this.updateAnimations_))}},t.prototype.calculateCenterRotate=function(e,t){var i,n=this.getCenter();return void 0!==n&&(bt(i=[n[0]-t[0],n[1]-t[1]],e-this.getRotation()),Rt(i,t)),i},t.prototype.calculateCenterZoom=function(e,t){var i,n=this.getCenter(),r=this.getResolution();return void 0!==n&&void 0!==r&&(i=[t[0]-e*(t[0]-n[0])/r,t[1]-e*(t[1]-n[1])/r]),i},t.prototype.getSizeFromViewport_=function(){var e=[100,100],t='.ol-viewport[data-view="'+r(this)+'"]',i=document.querySelector(t);if(i){var n=getComputedStyle(i);e[0]=parseInt(n.width,10),e[1]=parseInt(n.height,10)}return e},t.prototype.constrainCenter=function(e){return this.constraints_.center(e)},t.prototype.constrainResolution=function(e,t,i){var n=t||0,r=i||0;return this.constraints_.resolution(e,n,r)},t.prototype.constrainRotation=function(e,t){var i=t||0;return this.constraints_.rotation(e,i)},t.prototype.getCenter=function(){return this.get(At)},t.prototype.getConstraints=function(){return this.constraints_},t.prototype.getHints=function(e){return void 0!==e?(e[0]=this.hints_[0],e[1]=this.hints_[1],e):this.hints_.slice()},t.prototype.calculateExtent=function(e){var t=e||this.getSizeFromViewport_(),i=this.getCenter();st(i,1);var n=this.getResolution();st(void 0!==n,2);var r=this.getRotation();return st(void 0!==r,3),hi(i,n,r,t)},t.prototype.getMaxResolution=function(){return this.maxResolution_},t.prototype.getMinResolution=function(){return this.minResolution_},t.prototype.getMaxZoom=function(){return this.getZoomForResolution(this.minResolution_)},t.prototype.setMaxZoom=function(e){this.applyOptions_(this.getUpdatedOptions_({maxZoom:e}))},t.prototype.getMinZoom=function(){return this.getZoomForResolution(this.maxResolution_)},t.prototype.setMinZoom=function(e){this.applyOptions_(this.getUpdatedOptions_({minZoom:e}))},t.prototype.getProjection=function(){return this.projection_},t.prototype.getResolution=function(){return this.get(It)},t.prototype.getResolutions=function(){return this.resolutions_},t.prototype.getResolutionForExtent=function(e,t){var i=t||this.getSizeFromViewport_(),n=gi(e)/i[0],r=di(e)/i[1];return Math.max(n,r)},t.prototype.getResolutionForValueFunction=function(e){var t=e||2,i=this.maxResolution_,n=this.minResolution_,r=Math.log(i/n)/Math.log(t);return function(e){return i/Math.pow(t,e*r)}},t.prototype.getRotation=function(){return this.get(Pt)},t.prototype.getValueForResolutionFunction=function(e){var t=e||2,i=this.maxResolution_,n=this.minResolution_,r=Math.log(i/n)/Math.log(t);return function(e){return Math.log(i/e)/Math.log(t)/r}},t.prototype.getState=function(e){var t=this.getCenter(),i=this.getProjection(),n=this.getResolution(),r=n/e,o=this.getRotation();return{center:[Math.round(t[0]/r)*r,Math.round(t[1]/r)*r],projection:void 0!==i?i:null,resolution:n,rotation:o,zoom:this.getZoom()}},t.prototype.getZoom=function(){var e,t=this.getResolution();return void 0!==t&&(e=this.getZoomForResolution(t)),e},t.prototype.getZoomForResolution=function(e){var t,i,n=this.minZoom_||0;if(this.resolutions_){var r=Ge(this.resolutions_,e,1);n=r,t=this.resolutions_[r],i=r==this.resolutions_.length-1?2:t/this.resolutions_[r+1]}else t=this.maxResolution_,i=this.zoomFactor_;return n+Math.log(t/e)/Math.log(i)},t.prototype.getResolutionForZoom=function(e){return this.constrainResolution(this.maxResolution_,e-this.minZoom_,0)},t.prototype.fit=function(e,t){var i,n=t||{},r=n.size;r||(r=this.getSizeFromViewport_()),st(Array.isArray(e)||"function"==typeof e.getSimplifiedGeometry,24),Array.isArray(e)?(st(!yi(e),25),i=Zn(e)):e.getType()===_i.CIRCLE?(i=Zn(e=e.getExtent())).rotate(this.getRotation(),li(e)):i=e;var o,a=void 0!==n.padding?n.padding:[0,0,0,0],s=void 0===n.constrainResolution||n.constrainResolution,c=void 0!==n.nearest&&n.nearest;o=void 0!==n.minResolution?n.minResolution:void 0!==n.maxZoom?this.constrainResolution(this.maxResolution_,n.maxZoom-this.minZoom_,0):0;for(var l=i.getFlatCoordinates(),u=this.getRotation(),h=Math.cos(-u),d=Math.sin(-u),p=1/0,m=1/0,f=-1/0,g=-1/0,S=i.getStride(),y=0,v=l.length;y<v;y+=S){var _=l[y]*h-l[y+1]*d,C=l[y]*d+l[y+1]*h;p=Math.min(p,_),m=Math.min(m,C),f=Math.max(f,_),g=Math.max(g,C)}var T=this.getResolutionForExtent([p,m,f,g],[r[0]-a[1]-a[3],r[1]-a[0]-a[2]]);if(T=isNaN(T)?o:Math.max(T,o),s){var D=this.constrainResolution(T,0,0);!c&&D<T&&(D=this.constrainResolution(D,-1,0)),T=D}d=-d;var A=(p+f)/2,P=(m+g)/2,R=[(A+=(a[1]-a[3])/2*T)*h-(P+=(a[0]-a[2])/2*T)*d,P*h+A*d],x=n.callback?n.callback:I;void 0!==n.duration?this.animate({resolution:T,center:R,duration:n.duration,easing:n.easing},x):(this.setResolution(T),this.setCenter(R),tr(x,!0))},t.prototype.centerOn=function(e,t,i){var n=this.getRotation(),r=Math.cos(-n),o=Math.sin(-n),a=e[0]*r-e[1]*o,s=e[1]*r+e[0]*o,c=this.getResolution(),l=(a+=(t[0]/2-i[0])*c)*r-(s+=(i[1]-t[1]/2)*c)*(o=-o),u=s*r+a*o;this.setCenter([l,u])},t.prototype.isDef=function(){return!!this.getCenter()&&void 0!==this.getResolution()},t.prototype.rotate=function(e,t){if(void 0!==t){var i=this.calculateCenterRotate(e,t);this.setCenter(i)}this.setRotation(e)},t.prototype.setCenter=function(e){this.set(At,e),this.getAnimating()&&this.cancelAnimations()},t.prototype.setHint=function(e,t){return this.hints_[e]+=t,this.changed(),this.hints_[e]},t.prototype.setResolution=function(e){this.set(It,e),this.getAnimating()&&this.cancelAnimations()},t.prototype.setRotation=function(e){this.set(Pt,e),this.getAnimating()&&this.cancelAnimations()},t.prototype.setZoom=function(e){this.setResolution(this.getResolutionForZoom(e))},t}(q);function tr(e,t){setTimeout((function(){e(t)}),0)}function ir(e){return!(e.sourceCenter&&e.targetCenter&&!Et(e.sourceCenter,e.targetCenter))&&e.sourceResolution===e.targetResolution&&e.sourceRotation===e.targetRotation}function nr(e,t){var i=document.createElement("canvas");return e&&(i.width=e),t&&(i.height=t),i.getContext("2d")}function rr(e){var t=e.offsetWidth,i=getComputedStyle(e);return t+=parseInt(i.marginLeft,10)+parseInt(i.marginRight,10)}function or(e){var t=e.offsetHeight,i=getComputedStyle(e);return t+=parseInt(i.marginTop,10)+parseInt(i.marginBottom,10)}function ar(e,t){var i=t.parentNode;i&&i.replaceChild(e,t)}function sr(e){return e&&e.parentNode?e.parentNode.removeChild(e):null}function cr(e){for(;e.lastChild;)e.removeChild(e.lastChild)}var lr={OPACITY:"opacity",VISIBLE:"visible",EXTENT:"extent",Z_INDEX:"zIndex",MAX_RESOLUTION:"maxResolution",MIN_RESOLUTION:"minResolution",SOURCE:"source"},ur=function(e){function t(t){e.call(this);var i=l({},t);i[lr.OPACITY]=void 0!==t.opacity?t.opacity:1,i[lr.VISIBLE]=void 0===t.visible||t.visible,i[lr.Z_INDEX]=t.zIndex,i[lr.MAX_RESOLUTION]=void 0!==t.maxResolution?t.maxResolution:1/0,i[lr.MIN_RESOLUTION]=void 0!==t.minResolution?t.minResolution:0,this.setProperties(i),this.state_=null,this.type}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getType=function(){return this.type},t.prototype.getLayerState=function(){var e=this.state_||{layer:this,managed:!0};return e.opacity=dt(this.getOpacity(),0,1),e.sourceState=this.getSourceState(),e.visible=this.getVisible(),e.extent=this.getExtent(),e.zIndex=this.getZIndex()||0,e.maxResolution=this.getMaxResolution(),e.minResolution=Math.max(this.getMinResolution(),0),this.state_=e,e},t.prototype.getLayersArray=function(e){return i()},t.prototype.getLayerStatesArray=function(e){return i()},t.prototype.getExtent=function(){return this.get(lr.EXTENT)},t.prototype.getMaxResolution=function(){return this.get(lr.MAX_RESOLUTION)},t.prototype.getMinResolution=function(){return this.get(lr.MIN_RESOLUTION)},t.prototype.getOpacity=function(){return this.get(lr.OPACITY)},t.prototype.getSourceState=function(){return i()},t.prototype.getVisible=function(){return this.get(lr.VISIBLE)},t.prototype.getZIndex=function(){return this.get(lr.Z_INDEX)},t.prototype.setExtent=function(e){this.set(lr.EXTENT,e)},t.prototype.setMaxResolution=function(e){this.set(lr.MAX_RESOLUTION,e)},t.prototype.setMinResolution=function(e){this.set(lr.MIN_RESOLUTION,e)},t.prototype.setOpacity=function(e){this.set(lr.OPACITY,e)},t.prototype.setVisible=function(e){this.set(lr.VISIBLE,e)},t.prototype.setZIndex=function(e){this.set(lr.Z_INDEX,e)},t}(q),hr={UNDEFINED:"undefined",LOADING:"loading",READY:"ready",ERROR:"error"},dr={LAYERS:"layers"},pr=function(e){function t(t){var i=t||{},n=l({},i);delete n.layers;var r=i.layers;e.call(this,n),this.layersListenerKeys_=[],this.listenerKeys_={},S(this,M(dr.LAYERS),this.handleLayersChanged_,this),r?Array.isArray(r)?r=new V(r.slice(),{unique:!0}):st("function"==typeof r.getArray,43):r=new V(void 0,{unique:!0}),this.setLayers(r)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleLayerChange_=function(){this.changed()},t.prototype.handleLayersChanged_=function(){this.layersListenerKeys_.forEach(_),this.layersListenerKeys_.length=0;var e=this.getLayers();for(var t in this.layersListenerKeys_.push(S(e,s.ADD,this.handleLayersAdd_,this),S(e,s.REMOVE,this.handleLayersRemove_,this)),this.listenerKeys_)this.listenerKeys_[t].forEach(_);u(this.listenerKeys_);for(var i=e.getArray(),n=0,o=i.length;n<o;n++){var a=i[n];this.listenerKeys_[r(a)]=[S(a,c,this.handleLayerChange_,this),S(a,E.CHANGE,this.handleLayerChange_,this)]}this.changed()},t.prototype.handleLayersAdd_=function(e){var t=e.element;this.listenerKeys_[r(t)]=[S(t,c,this.handleLayerChange_,this),S(t,E.CHANGE,this.handleLayerChange_,this)],this.changed()},t.prototype.handleLayersRemove_=function(e){var t=r(e.element);this.listenerKeys_[t].forEach(_),delete this.listenerKeys_[t],this.changed()},t.prototype.getLayers=function(){return this.get(dr.LAYERS)},t.prototype.setLayers=function(e){this.set(dr.LAYERS,e)},t.prototype.getLayersArray=function(e){var t=void 0!==e?e:[];return this.getLayers().forEach((function(e){e.getLayersArray(t)})),t},t.prototype.getLayerStatesArray=function(e){var t=void 0!==e?e:[],i=t.length;this.getLayers().forEach((function(e){e.getLayerStatesArray(t)}));for(var n=this.getLayerState(),r=i,o=t.length;r<o;r++){var a=t[r];a.opacity*=n.opacity,a.visible=a.visible&&n.visible,a.maxResolution=Math.min(a.maxResolution,n.maxResolution),a.minResolution=Math.max(a.minResolution,n.minResolution),void 0!==n.extent&&(void 0!==a.extent?a.extent=pi(a.extent,n.extent):a.extent=n.extent)}return t},t.prototype.getSourceState=function(){return hr.READY},t}(ur);function mr(e,t){return Array.isArray(e)?e:(void 0===t?t=[e,e]:t[0]=t[1]=e,t)}var fr=function(e){function t(t){e.call(this);var i=function(e){var t=null;void 0!==e.keyboardEventTarget&&(t="string"==typeof e.keyboardEventTarget?document.getElementById(e.keyboardEventTarget):e.keyboardEventTarget);var i,n,r,o={},a=e.layers&&"function"==typeof e.layers.getLayers?e.layers:new pr({layers:e.layers});return o[tt.LAYERGROUP]=a,o[tt.TARGET]=e.target,o[tt.VIEW]=void 0!==e.view?e.view:new er,void 0!==e.controls&&(Array.isArray(e.controls)?i=new V(e.controls.slice()):(st("function"==typeof e.controls.getArray,47),i=e.controls)),void 0!==e.interactions&&(Array.isArray(e.interactions)?n=new V(e.interactions.slice()):(st("function"==typeof e.interactions.getArray,48),n=e.interactions)),void 0!==e.overlays?Array.isArray(e.overlays)?r=new V(e.overlays.slice()):(st("function"==typeof e.overlays.getArray,49),r=e.overlays):r=new V,{controls:i,interactions:n,keyboardEventTarget:t,overlays:r,values:o}}(t);this.maxTilesLoading_=void 0!==t.maxTilesLoading?t.maxTilesLoading:16,this.loadTilesWhileAnimating_=void 0!==t.loadTilesWhileAnimating&&t.loadTilesWhileAnimating,this.loadTilesWhileInteracting_=void 0!==t.loadTilesWhileInteracting&&t.loadTilesWhileInteracting,this.pixelRatio_=void 0!==t.pixelRatio?t.pixelRatio:ee,this.animationDelayKey_,this.animationDelay_=function(){this.animationDelayKey_=void 0,this.renderFrame_.call(this,Date.now())}.bind(this),this.coordinateToPixelTransform_=[1,0,0,1,0,0],this.pixelToCoordinateTransform_=[1,0,0,1,0,0],this.frameIndex_=0,this.frameState_=null,this.previousExtent_=null,this.viewPropertyListenerKey_=null,this.viewChangeListenerKey_=null,this.layerGroupPropertyListenerKeys_=null,this.viewport_=document.createElement("div"),this.viewport_.className="ol-viewport"+(ie?" ol-touch":""),this.viewport_.style.position="relative",this.viewport_.style.overflow="hidden",this.viewport_.style.width="100%",this.viewport_.style.height="100%",this.viewport_.style.msTouchAction="none",this.viewport_.style.touchAction="none",this.overlayContainer_=document.createElement("div"),this.overlayContainer_.className="ol-overlaycontainer",this.viewport_.appendChild(this.overlayContainer_),this.overlayContainerStopEvent_=document.createElement("div"),this.overlayContainerStopEvent_.className="ol-overlaycontainer-stopevent";for(var n=[E.CLICK,E.DBLCLICK,E.MOUSEDOWN,E.TOUCHSTART,E.MSPOINTERDOWN,oe.POINTERDOWN,E.MOUSEWHEEL,E.WHEEL],r=0,o=n.length;r<o;++r)S(this.overlayContainerStopEvent_,n[r],R);for(var a in this.viewport_.appendChild(this.overlayContainerStopEvent_),this.mapBrowserEventHandler_=new $e(this,t.moveTolerance),oe)S(this.mapBrowserEventHandler_,oe[a],this.handleMapBrowserEvent,this);this.keyboardEventTarget_=i.keyboardEventTarget,this.keyHandlerKeys_=null,S(this.viewport_,E.CONTEXTMENU,this.handleBrowserEvent,this),S(this.viewport_,E.WHEEL,this.handleBrowserEvent,this),S(this.viewport_,E.MOUSEWHEEL,this.handleBrowserEvent,this),this.controls=i.controls||new V,this.interactions=i.interactions||new V,this.overlays_=i.overlays,this.overlayIdIndex_={},this.renderer_=this.createRenderer(),this.handleResize_,this.focus_=null,this.postRenderFunctions_=[],this.tileQueue_=new lt(this.getTilePriority.bind(this),this.handleTileChange_.bind(this)),this.skippedFeatureUids_={},S(this,M(tt.LAYERGROUP),this.handleLayerGroupChanged_,this),S(this,M(tt.VIEW),this.handleViewChanged_,this),S(this,M(tt.SIZE),this.handleSizeChanged_,this),S(this,M(tt.TARGET),this.handleTargetChanged_,this),this.setProperties(i.values),this.controls.forEach(function(e){e.setMap(this)}.bind(this)),S(this.controls,s.ADD,(function(e){e.element.setMap(this)}),this),S(this.controls,s.REMOVE,(function(e){e.element.setMap(null)}),this),this.interactions.forEach(function(e){e.setMap(this)}.bind(this)),S(this.interactions,s.ADD,(function(e){e.element.setMap(this)}),this),S(this.interactions,s.REMOVE,(function(e){e.element.setMap(null)}),this),this.overlays_.forEach(this.addOverlayInternal_.bind(this)),S(this.overlays_,s.ADD,(function(e){this.addOverlayInternal_(e.element)}),this),S(this.overlays_,s.REMOVE,(function(e){var t=e.element.getId();void 0!==t&&delete this.overlayIdIndex_[t.toString()],e.element.setMap(null)}),this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createRenderer=function(){throw new Error("Use a map type that has a createRenderer method")},t.prototype.addControl=function(e){this.getControls().push(e)},t.prototype.addInteraction=function(e){this.getInteractions().push(e)},t.prototype.addLayer=function(e){this.getLayerGroup().getLayers().push(e)},t.prototype.addOverlay=function(e){this.getOverlays().push(e)},t.prototype.addOverlayInternal_=function(e){var t=e.getId();void 0!==t&&(this.overlayIdIndex_[t.toString()]=e),e.setMap(this)},t.prototype.disposeInternal=function(){this.mapBrowserEventHandler_.dispose(),v(this.viewport_,E.CONTEXTMENU,this.handleBrowserEvent,this),v(this.viewport_,E.WHEEL,this.handleBrowserEvent,this),v(this.viewport_,E.MOUSEWHEEL,this.handleBrowserEvent,this),void 0!==this.handleResize_&&(removeEventListener(E.RESIZE,this.handleResize_,!1),this.handleResize_=void 0),this.animationDelayKey_&&(cancelAnimationFrame(this.animationDelayKey_),this.animationDelayKey_=void 0),this.setTarget(null),e.prototype.disposeInternal.call(this)},t.prototype.forEachFeatureAtPixel=function(e,t,i){if(this.frameState_){var n=this.getCoordinateFromPixel(e),r=void 0!==(i=void 0!==i?i:{}).hitTolerance?i.hitTolerance*this.frameState_.pixelRatio:0,o=void 0!==i.layerFilter?i.layerFilter:D;return this.renderer_.forEachFeatureAtCoordinate(n,this.frameState_,r,t,null,o,null)}},t.prototype.getFeaturesAtPixel=function(e,t){var i=null;return this.forEachFeatureAtPixel(e,(function(e){i||(i=[]),i.push(e)}),t),i},t.prototype.forEachLayerAtPixel=function(e,t,i){if(this.frameState_){var n=i||{},r=void 0!==n.hitTolerance?i.hitTolerance*this.frameState_.pixelRatio:0,o=n.layerFilter||D;return this.renderer_.forEachLayerAtPixel(e,this.frameState_,r,t,null,o,null)}},t.prototype.hasFeatureAtPixel=function(e,t){if(!this.frameState_)return!1;var i=this.getCoordinateFromPixel(e),n=void 0!==(t=void 0!==t?t:{}).layerFilter?t.layerFilter:D,r=void 0!==t.hitTolerance?t.hitTolerance*this.frameState_.pixelRatio:0;return this.renderer_.hasFeatureAtCoordinate(i,this.frameState_,r,n,null)},t.prototype.getEventCoordinate=function(e){return this.getCoordinateFromPixel(this.getEventPixel(e))},t.prototype.getEventPixel=function(e){var t=this.viewport_.getBoundingClientRect(),i="changedTouches"in e?e.changedTouches[0]:e;return[i.clientX-t.left,i.clientY-t.top]},t.prototype.getTarget=function(){return this.get(tt.TARGET)},t.prototype.getTargetElement=function(){var e=this.getTarget();return void 0!==e?"string"==typeof e?document.getElementById(e):e:null},t.prototype.getCoordinateFromPixel=function(e){var t=this.frameState_;return t?ln(t.pixelToCoordinateTransform,e.slice()):null},t.prototype.getControls=function(){return this.controls},t.prototype.getOverlays=function(){return this.overlays_},t.prototype.getOverlayById=function(e){var t=this.overlayIdIndex_[e.toString()];return void 0!==t?t:null},t.prototype.getInteractions=function(){return this.interactions},t.prototype.getLayerGroup=function(){return this.get(tt.LAYERGROUP)},t.prototype.getLayers=function(){return this.getLayerGroup().getLayers()},t.prototype.getPixelFromCoordinate=function(e){var t=this.frameState_;return t?ln(t.coordinateToPixelTransform,e.slice(0,2)):null},t.prototype.getRenderer=function(){return this.renderer_},t.prototype.getSize=function(){return this.get(tt.SIZE)},t.prototype.getView=function(){return this.get(tt.VIEW)},t.prototype.getViewport=function(){return this.viewport_},t.prototype.getOverlayContainer=function(){return this.overlayContainer_},t.prototype.getOverlayContainerStopEvent=function(){return this.overlayContainerStopEvent_},t.prototype.getTilePriority=function(e,t,i,n){var r=this.frameState_;if(!(r&&t in r.wantedTiles))return 1/0;if(!r.wantedTiles[t][e.getKey()])return 1/0;var o=i[0]-r.focus[0],a=i[1]-r.focus[1];return 65536*Math.log(n)+Math.sqrt(o*o+a*a)/n},t.prototype.handleBrowserEvent=function(e,t){var i=t||e.type,n=new G(i,this,e);this.handleMapBrowserEvent(n)},t.prototype.handleMapBrowserEvent=function(e){if(this.frameState_){this.focus_=e.coordinate,e.frameState=this.frameState_;var t=this.getInteractions().getArray();if(!1!==this.dispatchEvent(e))for(var i=t.length-1;i>=0;i--){var n=t[i];if(n.getActive()&&!n.handleEvent(e))break}}},t.prototype.handlePostRender=function(){var e=this.frameState_,t=this.tileQueue_;if(!t.isEmpty()){var i=this.maxTilesLoading_,n=i;if(e){var r=e.viewHints;r[Tt]&&(i=this.loadTilesWhileAnimating_?8:0,n=2),r[Dt]&&(i=this.loadTilesWhileInteracting_?8:0,n=2)}t.getTilesLoading()<i&&(t.reprioritize(),t.loadMoreTiles(i,n))}!e||!this.hasListener(ot)||e.animate||this.tileQueue_.getTilesLoading()||function e(t){for(var i=0,n=t.length;i<n;++i){var r=t[i];if("function"==typeof r.getLayers)return e(r.getLayers().getArray());var o=r.getSource();if(o&&o.loading)return!0}return!1}(this.getLayers().getArray())||this.renderer_.dispatchRenderEvent(ot,e);for(var o=this.postRenderFunctions_,a=0,s=o.length;a<s;++a)o[a](this,e);o.length=0},t.prototype.handleSizeChanged_=function(){this.render()},t.prototype.handleTargetChanged_=function(){var e;if(this.getTarget()&&(e=this.getTargetElement()),this.keyHandlerKeys_){for(var t=0,i=this.keyHandlerKeys_.length;t<i;++t)_(this.keyHandlerKeys_[t]);this.keyHandlerKeys_=null}if(e){e.appendChild(this.viewport_);var n=this.keyboardEventTarget_?this.keyboardEventTarget_:e;this.keyHandlerKeys_=[S(n,E.KEYDOWN,this.handleBrowserEvent,this),S(n,E.KEYPRESS,this.handleBrowserEvent,this)],this.handleResize_||(this.handleResize_=this.updateSize.bind(this),addEventListener(E.RESIZE,this.handleResize_,!1))}else this.renderer_.removeLayerRenderers(),sr(this.viewport_),void 0!==this.handleResize_&&(removeEventListener(E.RESIZE,this.handleResize_,!1),this.handleResize_=void 0);this.updateSize()},t.prototype.handleTileChange_=function(){this.render()},t.prototype.handleViewPropertyChanged_=function(){this.render()},t.prototype.handleViewChanged_=function(){this.viewPropertyListenerKey_&&(_(this.viewPropertyListenerKey_),this.viewPropertyListenerKey_=null),this.viewChangeListenerKey_&&(_(this.viewChangeListenerKey_),this.viewChangeListenerKey_=null);var e=this.getView();e&&(this.viewport_.setAttribute("data-view",r(e)),this.viewPropertyListenerKey_=S(e,c,this.handleViewPropertyChanged_,this),this.viewChangeListenerKey_=S(e,E.CHANGE,this.handleViewPropertyChanged_,this)),this.render()},t.prototype.handleLayerGroupChanged_=function(){this.layerGroupPropertyListenerKeys_&&(this.layerGroupPropertyListenerKeys_.forEach(_),this.layerGroupPropertyListenerKeys_=null);var e=this.getLayerGroup();e&&(this.layerGroupPropertyListenerKeys_=[S(e,c,this.render,this),S(e,E.CHANGE,this.render,this)]),this.render()},t.prototype.isRendered=function(){return!!this.frameState_},t.prototype.renderSync=function(){this.animationDelayKey_&&cancelAnimationFrame(this.animationDelayKey_),this.animationDelay_()},t.prototype.render=function(){void 0===this.animationDelayKey_&&(this.animationDelayKey_=requestAnimationFrame(this.animationDelay_))},t.prototype.removeControl=function(e){return this.getControls().remove(e)},t.prototype.removeInteraction=function(e){return this.getInteractions().remove(e)},t.prototype.removeLayer=function(e){return this.getLayerGroup().getLayers().remove(e)},t.prototype.removeOverlay=function(e){return this.getOverlays().remove(e)},t.prototype.renderFrame_=function(e){var t,i=this.getSize(),n=this.getView(),o=[1/0,1/0,-1/0,-1/0],a=this.frameState_,s=null;if(void 0!==i&&function(e){return e[0]>0&&e[1]>0}(i)&&n&&n.isDef()){for(var c=n.getHints(this.frameState_?this.frameState_.viewHints:void 0),l=this.getLayerGroup().getLayerStatesArray(),u={},h=0,d=l.length;h<d;++h)u[r(l[h].layer)]=l[h];t=n.getState(this.pixelRatio_),s={animate:!1,coordinateToPixelTransform:this.coordinateToPixelTransform_,extent:o,focus:this.focus_?this.focus_:t.center,index:this.frameIndex_++,layerStates:u,layerStatesArray:l,pixelRatio:this.pixelRatio_,pixelToCoordinateTransform:this.pixelToCoordinateTransform_,postRenderFunctions:[],size:i,skippedFeatureUids:this.skippedFeatureUids_,tileQueue:this.tileQueue_,time:e,usedTiles:{},viewState:t,viewHints:c,wantedTiles:{}}}s&&(s.extent=hi(t.center,t.resolution,t.rotation,s.size,o)),this.frameState_=s,this.renderer_.renderFrame(s),s&&(s.animate&&this.render(),Array.prototype.push.apply(this.postRenderFunctions_,s.postRenderFunctions),a&&(!this.previousExtent_||!yi(this.previousExtent_)&&!ei(s.extent,this.previousExtent_))&&(this.dispatchEvent(new k(et.MOVESTART,this,a)),this.previousExtent_=Zt(this.previousExtent_)),this.previousExtent_&&!s.viewHints[Tt]&&!s.viewHints[Dt]&&!ei(s.extent,this.previousExtent_)&&(this.dispatchEvent(new k(et.MOVEEND,this,s)),Wt(s.extent,this.previousExtent_))),this.dispatchEvent(new k(et.POSTRENDER,this,s)),setTimeout(this.handlePostRender.bind(this),0)},t.prototype.setLayerGroup=function(e){this.set(tt.LAYERGROUP,e)},t.prototype.setSize=function(e){this.set(tt.SIZE,e)},t.prototype.setTarget=function(e){this.set(tt.TARGET,e)},t.prototype.setView=function(e){this.set(tt.VIEW,e)},t.prototype.skipFeature=function(e){this.skippedFeatureUids_[r(e)]=!0,this.render()},t.prototype.updateSize=function(){var e=this.getTargetElement();if(e){var t=getComputedStyle(e);this.setSize([e.offsetWidth-parseFloat(t.borderLeftWidth)-parseFloat(t.paddingLeft)-parseFloat(t.paddingRight)-parseFloat(t.borderRightWidth),e.offsetHeight-parseFloat(t.borderTopWidth)-parseFloat(t.paddingTop)-parseFloat(t.paddingBottom)-parseFloat(t.borderBottomWidth)])}else this.setSize(void 0)},t.prototype.unskipFeature=function(e){delete this.skippedFeatureUids_[r(e)],this.render()},t}(q),gr=function(e){function t(t){e.call(this),this.element=t.element?t.element:null,this.target_=null,this.map_=null,this.listenerKeys=[],this.render=t.render?t.render:I,t.target&&this.setTarget(t.target)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.disposeInternal=function(){sr(this.element),e.prototype.disposeInternal.call(this)},t.prototype.getMap=function(){return this.map_},t.prototype.setMap=function(e){this.map_&&sr(this.element);for(var t=0,i=this.listenerKeys.length;t<i;++t)_(this.listenerKeys[t]);this.listenerKeys.length=0,this.map_=e,this.map_&&((this.target_?this.target_:e.getOverlayContainerStopEvent()).appendChild(this.element),this.render!==I&&this.listenerKeys.push(S(e,et.POSTRENDER,this.render,this)),e.render())},t.prototype.setTarget=function(e){this.target_="string"==typeof e?document.getElementById(e):e},t}(q),Sr="ol-hidden",yr="ol-selectable",vr="ol-unselectable",_r="ol-unsupported",Cr="ol-control",Tr="ol-collapsed",Dr=function(){var e,t={};return function(i){if(e||(e=document.createElement("div").style),!(i in t)){e.font=i;var n=e.fontFamily;if(e.font="",!n)return null;t[i]=n.split(/,\s?/)}return t[i]}}(),Ar=function(e){function t(t){var i=l({},t);delete i.source,e.call(this,i),this.mapPrecomposeKey_=null,this.mapRenderKey_=null,this.sourceChangeKey_=null,t.map&&this.setMap(t.map),S(this,M(lr.SOURCE),this.handleSourcePropertyChange_,this);var n=t.source?t.source:null;this.setSource(n)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getLayersArray=function(e){var t=e||[];return t.push(this),t},t.prototype.getLayerStatesArray=function(e){var t=e||[];return t.push(this.getLayerState()),t},t.prototype.getSource=function(){return this.get(lr.SOURCE)||null},t.prototype.getSourceState=function(){var e=this.getSource();return e?e.getState():hr.UNDEFINED},t.prototype.handleSourceChange_=function(){this.changed()},t.prototype.handleSourcePropertyChange_=function(){this.sourceChangeKey_&&(_(this.sourceChangeKey_),this.sourceChangeKey_=null);var e=this.getSource();e&&(this.sourceChangeKey_=S(e,E.CHANGE,this.handleSourceChange_,this)),this.changed()},t.prototype.setMap=function(e){this.mapPrecomposeKey_&&(_(this.mapPrecomposeKey_),this.mapPrecomposeKey_=null),e||this.changed(),this.mapRenderKey_&&(_(this.mapRenderKey_),this.mapRenderKey_=null),e&&(this.mapPrecomposeKey_=S(e,nt,(function(e){var t=e,i=this.getLayerState();i.managed=!1,void 0===this.getZIndex()&&(i.zIndex=1/0),t.frameState.layerStatesArray.push(i),t.frameState.layerStates[r(this)]=i}),this),this.mapRenderKey_=S(this,E.CHANGE,e.render,e),this.changed())},t.prototype.setSource=function(e){this.set(lr.SOURCE,e)},t}(ur);function Ir(e,t){return e.visible&&t>=e.minResolution&&t<e.maxResolution}var Pr=function(e){function t(t){var i=t||{};e.call(this,{element:document.createElement("div"),render:i.render||Rr,target:i.target}),this.ulElement_=document.createElement("ul"),this.collapsed_=void 0===i.collapsed||i.collapsed,this.overrideCollapsible_=void 0!==i.collapsible,this.collapsible_=void 0===i.collapsible||i.collapsible,this.collapsible_||(this.collapsed_=!1);var n=void 0!==i.className?i.className:"ol-attribution",r=void 0!==i.tipLabel?i.tipLabel:"Attributions",o=void 0!==i.collapseLabel?i.collapseLabel:"»";"string"==typeof o?(this.collapseLabel_=document.createElement("span"),this.collapseLabel_.textContent=o):this.collapseLabel_=o;var a=void 0!==i.label?i.label:"i";"string"==typeof a?(this.label_=document.createElement("span"),this.label_.textContent=a):this.label_=a;var s=this.collapsible_&&!this.collapsed_?this.collapseLabel_:this.label_,c=document.createElement("button");c.setAttribute("type","button"),c.title=r,c.appendChild(s),S(c,E.CLICK,this.handleClick_,this);var l=n+" "+vr+" "+Cr+(this.collapsed_&&this.collapsible_?" "+Tr:"")+(this.collapsible_?"":" ol-uncollapsible"),u=this.element;u.className=l,u.appendChild(this.ulElement_),u.appendChild(c),this.renderedAttributions_=[],this.renderedVisible_=!0}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.collectSourceAttributions_=function(e){for(var t={},i=[],n=e.layerStatesArray,r=e.viewState.resolution,o=0,a=n.length;o<a;++o){var s=n[o];if(Ir(s,r)){var c=s.layer.getSource();if(c){var l=c.getAttributions();if(l){var u=l(e);if(u)if(this.overrideCollapsible_||!1!==c.getAttributionsCollapsible()||this.setCollapsible(!1),Array.isArray(u))for(var h=0,d=u.length;h<d;++h)u[h]in t||(i.push(u[h]),t[u[h]]=!0);else u in t||(i.push(u),t[u]=!0)}}}}return i},t.prototype.updateElement_=function(e){if(e){var t=this.collectSourceAttributions_(e),i=t.length>0;if(this.renderedVisible_!=i&&(this.element.style.display=i?"":"none",this.renderedVisible_=i),!ze(t,this.renderedAttributions_)){cr(this.ulElement_);for(var n=0,r=t.length;n<r;++n){var o=document.createElement("li");o.innerHTML=t[n],this.ulElement_.appendChild(o)}this.renderedAttributions_=t}}else this.renderedVisible_&&(this.element.style.display="none",this.renderedVisible_=!1)},t.prototype.handleClick_=function(e){e.preventDefault(),this.handleToggle_()},t.prototype.handleToggle_=function(){this.element.classList.toggle(Tr),this.collapsed_?ar(this.collapseLabel_,this.label_):ar(this.label_,this.collapseLabel_),this.collapsed_=!this.collapsed_},t.prototype.getCollapsible=function(){return this.collapsible_},t.prototype.setCollapsible=function(e){this.collapsible_!==e&&(this.collapsible_=e,this.element.classList.toggle("ol-uncollapsible"),!e&&this.collapsed_&&this.handleToggle_())},t.prototype.setCollapsed=function(e){this.collapsible_&&this.collapsed_!==e&&this.handleToggle_()},t.prototype.getCollapsed=function(){return this.collapsed_},t}(gr);function Rr(e){this.updateElement_(e.frameState)}var xr,Er=function(){if(!xr){var e=document.body;e.webkitRequestFullscreen?xr="webkitfullscreenchange":e.mozRequestFullScreen?xr="mozfullscreenchange":e.msRequestFullscreen?xr="MSFullscreenChange":e.requestFullscreen&&(xr="fullscreenchange")}return xr},br=function(e){function t(t){var i=t||{};e.call(this,{element:document.createElement("div"),target:i.target}),this.cssClassName_=void 0!==i.className?i.className:"ol-full-screen";var n=void 0!==i.label?i.label:"⤢";this.labelNode_="string"==typeof n?document.createTextNode(n):n;var r=void 0!==i.labelActive?i.labelActive:"×";this.labelActiveNode_="string"==typeof r?document.createTextNode(r):r,this.button_=document.createElement("button");var o=i.tipLabel?i.tipLabel:"Toggle full-screen";this.setClassName_(this.button_,qr()),this.button_.setAttribute("type","button"),this.button_.title=o,this.button_.appendChild(this.labelNode_),S(this.button_,E.CLICK,this.handleClick_,this);var a=this.cssClassName_+" "+vr+" "+Cr+" "+(Or()?"":_r),s=this.element;s.className=a,s.appendChild(this.button_),this.keys_=void 0!==i.keys&&i.keys,this.source_=i.source}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleClick_=function(e){e.preventDefault(),this.handleFullScreen_()},t.prototype.handleFullScreen_=function(){if(Or()){var e,t=this.getMap();t&&(qr()?document.exitFullscreen?document.exitFullscreen():document.msExitFullscreen?document.msExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen&&document.webkitExitFullscreen():(e=this.source_?"string"==typeof this.source_?document.getElementById(this.source_):this.source_:t.getTargetElement(),this.keys_?function(e){e.mozRequestFullScreenWithKeys?e.mozRequestFullScreenWithKeys():e.webkitRequestFullscreen?e.webkitRequestFullscreen():Fr(e)}(e):Fr(e)))}},t.prototype.handleFullScreenChange_=function(){var e=this.getMap();qr()?(this.setClassName_(this.button_,!0),ar(this.labelActiveNode_,this.labelNode_)):(this.setClassName_(this.button_,!1),ar(this.labelNode_,this.labelActiveNode_)),e&&e.updateSize()},t.prototype.setClassName_=function(e,t){var i=this.cssClassName_+"-true",n=this.cssClassName_+"-false",r=t?i:n;e.classList.remove(i),e.classList.remove(n),e.classList.add(r)},t.prototype.setMap=function(t){e.prototype.setMap.call(this,t),t&&this.listenerKeys.push(S(document,Er(),this.handleFullScreenChange_,this))},t}(gr);function Or(){var e=document.body;return!!(e.webkitRequestFullscreen||e.mozRequestFullScreen&&document.mozFullScreenEnabled||e.msRequestFullscreen&&document.msFullscreenEnabled||e.requestFullscreen&&document.fullscreenEnabled)}function qr(){return!!(document.webkitIsFullScreen||document.mozFullScreen||document.msFullscreenElement||document.fullscreenElement)}function Fr(e){e.requestFullscreen?e.requestFullscreen():e.msRequestFullscreen?e.msRequestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen&&e.webkitRequestFullscreen()}var Mr=function(e){function t(t){var i=t||{};e.call(this,{element:document.createElement("div"),render:i.render||Lr,target:i.target});var n=void 0!==i.className?i.className:"ol-rotate",r=void 0!==i.label?i.label:"⇧";this.label_=null,"string"==typeof r?(this.label_=document.createElement("span"),this.label_.className="ol-compass",this.label_.textContent=r):(this.label_=r,this.label_.classList.add("ol-compass"));var o=i.tipLabel?i.tipLabel:"Reset rotation",a=document.createElement("button");a.className=n+"-reset",a.setAttribute("type","button"),a.title=o,a.appendChild(this.label_),S(a,E.CLICK,this.handleClick_,this);var s=n+" "+vr+" "+Cr,c=this.element;c.className=s,c.appendChild(a),this.callResetNorth_=i.resetNorth?i.resetNorth:void 0,this.duration_=void 0!==i.duration?i.duration:250,this.autoHide_=void 0===i.autoHide||i.autoHide,this.rotation_=void 0,this.autoHide_&&this.element.classList.add(Sr)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleClick_=function(e){e.preventDefault(),void 0!==this.callResetNorth_?this.callResetNorth_():this.resetNorth_()},t.prototype.resetNorth_=function(){var e=this.getMap().getView();e&&void 0!==e.getRotation()&&(this.duration_>0?e.animate({rotation:0,duration:this.duration_,easing:wt}):e.setRotation(0))},t}(gr);function Lr(e){var t=e.frameState;if(t){var i=t.viewState.rotation;if(i!=this.rotation_){var n="rotate("+i+"rad)";if(this.autoHide_){var r=this.element.classList.contains(Sr);r||0!==i?r&&0!==i&&this.element.classList.remove(Sr):this.element.classList.add(Sr)}this.label_.style.msTransform=n,this.label_.style.webkitTransform=n,this.label_.style.transform=n}this.rotation_=i}}var wr=function(e){function t(t){var i=t||{};e.call(this,{element:document.createElement("div"),target:i.target});var n=void 0!==i.className?i.className:"ol-zoom",r=void 0!==i.delta?i.delta:1,o=void 0!==i.zoomInLabel?i.zoomInLabel:"+",a=void 0!==i.zoomOutLabel?i.zoomOutLabel:"−",s=void 0!==i.zoomInTipLabel?i.zoomInTipLabel:"Zoom in",c=void 0!==i.zoomOutTipLabel?i.zoomOutTipLabel:"Zoom out",l=document.createElement("button");l.className=n+"-in",l.setAttribute("type","button"),l.title=s,l.appendChild("string"==typeof o?document.createTextNode(o):o),S(l,E.CLICK,this.handleClick_.bind(this,r));var u=document.createElement("button");u.className=n+"-out",u.setAttribute("type","button"),u.title=c,u.appendChild("string"==typeof a?document.createTextNode(a):a),S(u,E.CLICK,this.handleClick_.bind(this,-r));var h=n+" "+vr+" "+Cr,d=this.element;d.className=h,d.appendChild(l),d.appendChild(u),this.duration_=void 0!==i.duration?i.duration:250}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleClick_=function(e,t){t.preventDefault(),this.zoomByDelta_(e)},t.prototype.zoomByDelta_=function(e){var t=this.getMap().getView();if(t){var i=t.getResolution();if(i){var n=t.constrainResolution(i,e);this.duration_>0?(t.getAnimating()&&t.cancelAnimations(),t.animate({resolution:n,duration:this.duration_,easing:wt})):t.setResolution(n)}}},t}(gr);function Nr(e){var t=e||{},i=new V;return(void 0===t.zoom||t.zoom)&&i.push(new wr(t.zoomOptions)),(void 0===t.rotate||t.rotate)&&i.push(new Mr(t.rotateOptions)),(void 0===t.attribution||t.attribution)&&i.push(new Pr(t.attributionOptions)),i}var Br=function(e,t,i){this.decay_=e,this.minVelocity_=t,this.delay_=i,this.points_=[],this.angle_=0,this.initialVelocity_=0};Br.prototype.begin=function(){this.points_.length=0,this.angle_=0,this.initialVelocity_=0},Br.prototype.update=function(e,t){this.points_.push(e,t,Date.now())},Br.prototype.end=function(){if(this.points_.length<6)return!1;var e=Date.now()-this.delay_,t=this.points_.length-3;if(this.points_[t+2]<e)return!1;for(var i=t-3;i>0&&this.points_[i+2]>e;)i-=3;var n=this.points_[t+2]-this.points_[i+2];if(n<1e3/60)return!1;var r=this.points_[t]-this.points_[i],o=this.points_[t+1]-this.points_[i+1];return this.angle_=Math.atan2(o,r),this.initialVelocity_=Math.sqrt(r*r+o*o)/n,this.initialVelocity_>this.minVelocity_},Br.prototype.getDistance=function(){return(this.minVelocity_-this.initialVelocity_)/this.decay_},Br.prototype.getAngle=function(){return this.angle_};var Vr={ACTIVE:"active"},kr=function(e){function t(t){e.call(this),t.handleEvent&&(this.handleEvent=t.handleEvent),this.map_=null,this.setActive(!0)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getActive=function(){return this.get(Vr.ACTIVE)},t.prototype.getMap=function(){return this.map_},t.prototype.handleEvent=function(e){return!0},t.prototype.setActive=function(e){this.set(Vr.ACTIVE,e)},t.prototype.setMap=function(e){this.map_=e},t}(q);function Gr(e,t,i,n){t=e.constrainRotation(t,0),Ur(e,t,i,n)}function Ur(e,t,i,n){if(void 0!==t){var r=e.getRotation(),o=e.getCenter();void 0!==r&&o&&n>0?e.animate({rotation:t,anchor:i,duration:n,easing:wt}):e.rotate(t,i)}}function Wr(e,t,i,n,r){t=e.constrainResolution(t,0,r),Hr(e,t,i,n)}function zr(e,t,i,n){var r=e.getResolution(),o=e.constrainResolution(r,t,0);if(void 0!==o){var a=e.getResolutions();o=dt(o,e.getMinResolution()||a[a.length-1],e.getMaxResolution()||a[0])}if(i&&void 0!==o&&o!==r){var s=e.getCenter(),c=e.calculateCenterZoom(o,i);c=e.constrainCenter(c),i=[(o*s[0]-r*c[0])/(o-r),(o*s[1]-r*c[1])/(o-r)]}Hr(e,o,i,n)}function Hr(e,t,i,n){if(t){var r=e.getResolution(),o=e.getCenter();if(void 0!==r&&o&&t!==r&&n)e.animate({resolution:t,anchor:i,duration:n,easing:wt});else{if(i){var a=e.calculateCenterZoom(t,i);e.setCenter(a)}e.setResolution(t)}}}var jr=function(e){function t(t){e.call(this,{handleEvent:Xr});var i=t||{};this.delta_=i.delta?i.delta:1,this.duration_=void 0!==i.duration?i.duration:250}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(kr);function Xr(e){var t=!1;if(e.type==oe.DBLCLICK){var i=e.originalEvent,n=e.map,r=e.coordinate,o=i.shiftKey?-this.delta_:this.delta_;zr(n.getView(),o,r,this.duration_),e.preventDefault(),t=!0}return!t}var Yr=function(e){var t=e.originalEvent;return t.altKey&&!(t.metaKey||t.ctrlKey)&&!t.shiftKey},Kr=function(e){var t=e.originalEvent;return t.altKey&&!(t.metaKey||t.ctrlKey)&&t.shiftKey},Zr=function(e){return e.target.getTargetElement()===document.activeElement},Qr=D,Jr=function(e){var t=e.originalEvent;return 0==t.button&&!(J&&$&&t.ctrlKey)},$r=A,eo=function(e){return"pointermove"==e.type},to=function(e){return e.type==oe.SINGLECLICK},io=function(e){var t=e.originalEvent;return!t.altKey&&!(t.metaKey||t.ctrlKey)&&!t.shiftKey},no=function(e){var t=e.originalEvent;return!t.altKey&&!(t.metaKey||t.ctrlKey)&&t.shiftKey},ro=function(e){var t=e.originalEvent.target.tagName;return"INPUT"!==t&&"SELECT"!==t&&"TEXTAREA"!==t},oo=function(e){var t=e.pointerEvent;return st(void 0!==t,56),"mouse"==t.pointerType},ao=function(e){var t=e.pointerEvent;return st(void 0!==t,56),t.isPrimary&&0===t.button},so=function(e){function t(t){var i=t||{};e.call(this,i),i.handleDownEvent&&(this.handleDownEvent=i.handleDownEvent),i.handleDragEvent&&(this.handleDragEvent=i.handleDragEvent),i.handleMoveEvent&&(this.handleMoveEvent=i.handleMoveEvent),i.handleUpEvent&&(this.handleUpEvent=i.handleUpEvent),i.stopDown&&(this.stopDown=i.stopDown),this.handlingDownUpSequence=!1,this.trackedPointers_={},this.targetPointers=[]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleDownEvent=function(e){return!1},t.prototype.handleDragEvent=function(e){},t.prototype.handleEvent=function(e){if(!e.pointerEvent)return!0;var t=!1;if(this.updateTrackedPointers_(e),this.handlingDownUpSequence){if(e.type==oe.POINTERDRAG)this.handleDragEvent(e);else if(e.type==oe.POINTERUP){var i=this.handleUpEvent(e);this.handlingDownUpSequence=i&&this.targetPointers.length>0}}else if(e.type==oe.POINTERDOWN){var n=this.handleDownEvent(e);n&&e.preventDefault(),this.handlingDownUpSequence=n,t=this.stopDown(n)}else e.type==oe.POINTERMOVE&&this.handleMoveEvent(e);return!t},t.prototype.handleMoveEvent=function(e){},t.prototype.handleUpEvent=function(e){return!1},t.prototype.stopDown=function(e){return e},t.prototype.updateTrackedPointers_=function(e){if(function(e){var t=e.type;return t===oe.POINTERDOWN||t===oe.POINTERDRAG||t===oe.POINTERUP}(e)){var t=e.pointerEvent,i=t.pointerId.toString();e.type==oe.POINTERUP?delete this.trackedPointers_[i]:e.type==oe.POINTERDOWN?this.trackedPointers_[i]=t:i in this.trackedPointers_&&(this.trackedPointers_[i]=t),this.targetPointers=h(this.trackedPointers_)}},t}(kr);function co(e){for(var t=e.length,i=0,n=0,r=0;r<t;r++)i+=e[r].clientX,n+=e[r].clientY;return[i/t,n/t]}var lo=function(e){function t(t){e.call(this,{stopDown:A});var i=t||{};this.kinetic_=i.kinetic,this.lastCentroid=null,this.lastPointersCount_,this.panning_=!1,this.condition_=i.condition?i.condition:io,this.noKinetic_=!1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleDragEvent=function(e){this.panning_||(this.panning_=!0,this.getMap().getView().setHint(Dt,1));var t=this.targetPointers,i=co(t);if(t.length==this.lastPointersCount_){if(this.kinetic_&&this.kinetic_.update(i[0],i[1]),this.lastCentroid){var n=this.lastCentroid[0]-i[0],r=i[1]-this.lastCentroid[1],o=e.map.getView(),a=[n,r];Ot(a,o.getResolution()),bt(a,o.getRotation()),Rt(a,o.getCenter()),a=o.constrainCenter(a),o.setCenter(a)}}else this.kinetic_&&this.kinetic_.begin();this.lastCentroid=i,this.lastPointersCount_=t.length},t.prototype.handleUpEvent=function(e){var t=e.map,i=t.getView();if(0===this.targetPointers.length){if(!this.noKinetic_&&this.kinetic_&&this.kinetic_.end()){var n=this.kinetic_.getDistance(),r=this.kinetic_.getAngle(),o=i.getCenter(),a=t.getPixelFromCoordinate(o),s=t.getCoordinateFromPixel([a[0]-n*Math.cos(r),a[1]-n*Math.sin(r)]);i.animate({center:i.constrainCenter(s),duration:500,easing:wt})}return this.panning_&&(this.panning_=!1,i.setHint(Dt,-1)),!1}return this.kinetic_&&this.kinetic_.begin(),this.lastCentroid=null,!0},t.prototype.handleDownEvent=function(e){if(this.targetPointers.length>0&&this.condition_(e)){var t=e.map.getView();return this.lastCentroid=null,t.getAnimating()&&t.setCenter(e.frameState.viewState.center),this.kinetic_&&this.kinetic_.begin(),this.noKinetic_=this.targetPointers.length>1,!0}return!1},t}(so),uo=function(e){function t(t){var i=t||{};e.call(this,{stopDown:A}),this.condition_=i.condition?i.condition:Kr,this.lastAngle_=void 0,this.duration_=void 0!==i.duration?i.duration:250}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleDragEvent=function(e){if(oo(e)){var t=e.map,i=t.getView();if(i.getConstraints().rotation!==_t){var n=t.getSize(),r=e.pixel,o=Math.atan2(n[1]/2-r[1],r[0]-n[0]/2);if(void 0!==this.lastAngle_){var a=o-this.lastAngle_,s=i.getRotation();Ur(i,s-a)}this.lastAngle_=o}}},t.prototype.handleUpEvent=function(e){if(!oo(e))return!0;var t=e.map.getView();t.setHint(Dt,-1);var i=t.getRotation();return Gr(t,i,void 0,this.duration_),!1},t.prototype.handleDownEvent=function(e){return!(!oo(e)||!Jr(e)||!this.condition_(e)||(e.map.getView().setHint(Dt,1),this.lastAngle_=void 0,0))},t}(so),ho=function(e){function t(t){e.call(this),this.geometry_=null,this.element_=document.createElement("div"),this.element_.style.position="absolute",this.element_.className="ol-box "+t,this.map_=null,this.startPixel_=null,this.endPixel_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.disposeInternal=function(){this.setMap(null)},t.prototype.render_=function(){var e=this.startPixel_,t=this.endPixel_,i=this.element_.style;i.left=Math.min(e[0],t[0])+"px",i.top=Math.min(e[1],t[1])+"px",i.width=Math.abs(t[0]-e[0])+"px",i.height=Math.abs(t[1]-e[1])+"px"},t.prototype.setMap=function(e){if(this.map_){this.map_.getOverlayContainer().removeChild(this.element_);var t=this.element_.style;t.left=t.top=t.width=t.height="inherit"}this.map_=e,this.map_&&this.map_.getOverlayContainer().appendChild(this.element_)},t.prototype.setPixels=function(e,t){this.startPixel_=e,this.endPixel_=t,this.createOrUpdateGeometry(),this.render_()},t.prototype.createOrUpdateGeometry=function(){var e=this.startPixel_,t=this.endPixel_,i=[e,[e[0],t[1]],t,[t[0],e[1]]].map(this.map_.getCoordinateFromPixel,this.map_);i[4]=i[0].slice(),this.geometry_?this.geometry_.setCoordinates([i]):this.geometry_=new Kn([i])},t.prototype.getGeometry=function(){return this.geometry_},t}(T),po="boxstart",mo="boxdrag",fo="boxend",go=function(e){function t(t,i,n){e.call(this,t),this.coordinate=i,this.mapBrowserEvent=n}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),So=function(e){function t(t){var i=t||{},n=i.condition?i.condition:no;e.call(this,{condition:n,className:i.className||"ol-dragzoom",onBoxEnd:yo}),this.duration_=void 0!==i.duration?i.duration:200,this.out_=void 0!==i.out&&i.out}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(function(e){function t(t){e.call(this);var i=t||{};this.box_=new ho(i.className||"ol-dragbox"),this.minArea_=void 0!==i.minArea?i.minArea:64,this.onBoxEnd_=i.onBoxEnd?i.onBoxEnd:I,this.startPixel_=null,this.condition_=i.condition?i.condition:Qr,this.boxEndCondition_=i.boxEndCondition?i.boxEndCondition:this.defaultBoxEndCondition}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.defaultBoxEndCondition=function(e,t,i){var n=i[0]-t[0],r=i[1]-t[1];return n*n+r*r>=this.minArea_},t.prototype.getGeometry=function(){return this.box_.getGeometry()},t.prototype.handleDragEvent=function(e){oo(e)&&(this.box_.setPixels(this.startPixel_,e.pixel),this.dispatchEvent(new go(mo,e.coordinate,e)))},t.prototype.handleUpEvent=function(e){return!oo(e)||(this.box_.setMap(null),this.boxEndCondition_(e,this.startPixel_,e.pixel)&&(this.onBoxEnd_(e),this.dispatchEvent(new go(fo,e.coordinate,e))),!1)},t.prototype.handleDownEvent=function(e){return!(!oo(e)||!Jr(e)||!this.condition_(e)||(this.startPixel_=e.pixel,this.box_.setMap(e.map),this.box_.setPixels(this.startPixel_,this.startPixel_),this.dispatchEvent(new go(po,e.coordinate,e)),0))},t}(so));function yo(){var e=this.getMap(),t=e.getView(),i=e.getSize(),n=this.getGeometry().getExtent();if(this.out_){var r=t.calculateExtent(i),o=Jt([e.getPixelFromCoordinate(si(n)),e.getPixelFromCoordinate(fi(n))]);vi(r,1/t.getResolutionForExtent(o,i)),n=r}var a=t.constrainResolution(t.getResolutionForExtent(n,i)),s=li(n);s=t.constrainCenter(s),t.animate({resolution:a,center:s,duration:this.duration_,easing:wt})}var vo={LEFT:37,UP:38,RIGHT:39,DOWN:40},_o=function(e){function t(t){e.call(this,{handleEvent:Co});var i=t||{};this.defaultCondition_=function(e){return io(e)&&ro(e)},this.condition_=void 0!==i.condition?i.condition:this.defaultCondition_,this.duration_=void 0!==i.duration?i.duration:100,this.pixelDelta_=void 0!==i.pixelDelta?i.pixelDelta:128}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(kr);function Co(e){var t=!1;if(e.type==E.KEYDOWN){var i=e.originalEvent.keyCode;if(this.condition_(e)&&(i==vo.DOWN||i==vo.LEFT||i==vo.RIGHT||i==vo.UP)){var n=e.map.getView(),r=n.getResolution()*this.pixelDelta_,o=0,a=0;i==vo.DOWN?a=-r:i==vo.LEFT?o=-r:i==vo.RIGHT?o=r:a=r;var s=[o,a];bt(s,n.getRotation()),function(e,t,i){var n=e.getCenter();if(n){var r=e.constrainCenter([n[0]+t[0],n[1]+t[1]]);i?e.animate({duration:i,easing:Bt,center:r}):e.setCenter(r)}}(n,s,this.duration_),e.preventDefault(),t=!0}}return!t}var To=function(e){function t(t){e.call(this,{handleEvent:Do});var i=t||{};this.condition_=i.condition?i.condition:ro,this.delta_=i.delta?i.delta:1,this.duration_=void 0!==i.duration?i.duration:100}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(kr);function Do(e){var t=!1;if(e.type==E.KEYDOWN||e.type==E.KEYPRESS){var i=e.originalEvent.charCode;if(this.condition_(e)&&(i=="+".charCodeAt(0)||i=="-".charCodeAt(0))){var n=e.map,r=i=="+".charCodeAt(0)?this.delta_:-this.delta_;zr(n.getView(),r,void 0,this.duration_),e.preventDefault(),t=!0}}return!t}var Ao="trackpad",Io="wheel",Po=function(e){function t(t){var i=t||{};e.call(this,i),this.delta_=0,this.duration_=void 0!==i.duration?i.duration:250,this.timeout_=void 0!==i.timeout?i.timeout:80,this.useAnchor_=void 0===i.useAnchor||i.useAnchor,this.constrainResolution_=i.constrainResolution||!1,this.condition_=i.condition?i.condition:Qr,this.lastAnchor_=null,this.startTime_=void 0,this.timeoutId_,this.mode_=void 0,this.trackpadEventGap_=400,this.trackpadTimeoutId_,this.trackpadDeltaPerZoom_=300,this.trackpadZoomBuffer_=1.5}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.decrementInteractingHint_=function(){this.trackpadTimeoutId_=void 0,this.getMap().getView().setHint(Dt,-1)},t.prototype.handleEvent=function(e){if(!this.condition_(e))return!0;var t=e.type;if(t!==E.WHEEL&&t!==E.MOUSEWHEEL)return!0;e.preventDefault();var i,n=e.map,r=e.originalEvent;if(this.useAnchor_&&(this.lastAnchor_=e.coordinate),e.type==E.WHEEL?(i=r.deltaY,Z&&r.deltaMode===WheelEvent.DOM_DELTA_PIXEL&&(i/=ee),r.deltaMode===WheelEvent.DOM_DELTA_LINE&&(i*=40)):e.type==E.MOUSEWHEEL&&(i=-r.wheelDeltaY,Q&&(i/=3)),0===i)return!1;var o=Date.now();if(void 0===this.startTime_&&(this.startTime_=o),(!this.mode_||o-this.startTime_>this.trackpadEventGap_)&&(this.mode_=Math.abs(i)<4?Ao:Io),this.mode_===Ao){var a=n.getView();this.trackpadTimeoutId_?clearTimeout(this.trackpadTimeoutId_):a.setHint(Dt,1),this.trackpadTimeoutId_=setTimeout(this.decrementInteractingHint_.bind(this),this.trackpadEventGap_);var s=a.getResolution()*Math.pow(2,i/this.trackpadDeltaPerZoom_),c=a.getMinResolution(),l=a.getMaxResolution(),u=0;if(s<c?(s=Math.max(s,c/this.trackpadZoomBuffer_),u=1):s>l&&(s=Math.min(s,l*this.trackpadZoomBuffer_),u=-1),this.lastAnchor_){var h=a.calculateCenterZoom(s,this.lastAnchor_);a.setCenter(a.constrainCenter(h))}return a.setResolution(s),0===u&&this.constrainResolution_&&a.animate({resolution:a.constrainResolution(s,i>0?-1:1),easing:wt,anchor:this.lastAnchor_,duration:this.duration_}),u>0?a.animate({resolution:c,easing:wt,anchor:this.lastAnchor_,duration:500}):u<0&&a.animate({resolution:l,easing:wt,anchor:this.lastAnchor_,duration:500}),this.startTime_=o,!1}this.delta_+=i;var d=Math.max(this.timeout_-(o-this.startTime_),0);return clearTimeout(this.timeoutId_),this.timeoutId_=setTimeout(this.handleWheelZoom_.bind(this,n),d),!1},t.prototype.handleWheelZoom_=function(e){var t=e.getView();t.getAnimating()&&t.cancelAnimations(),zr(t,-dt(this.delta_,-1,1),this.lastAnchor_,this.duration_),this.mode_=void 0,this.delta_=0,this.lastAnchor_=null,this.startTime_=void 0,this.timeoutId_=void 0},t.prototype.setMouseAnchor=function(e){this.useAnchor_=e,e||(this.lastAnchor_=null)},t}(kr),Ro=function(e){function t(t){var i=t||{},n=i;n.stopDown||(n.stopDown=A),e.call(this,n),this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.threshold_=void 0!==i.threshold?i.threshold:.3,this.duration_=void 0!==i.duration?i.duration:250}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleDragEvent=function(e){var t=0,i=this.targetPointers[0],n=this.targetPointers[1],r=Math.atan2(n.clientY-i.clientY,n.clientX-i.clientX);if(void 0!==this.lastAngle_){var o=r-this.lastAngle_;this.rotationDelta_+=o,!this.rotating_&&Math.abs(this.rotationDelta_)>this.threshold_&&(this.rotating_=!0),t=o}this.lastAngle_=r;var a=e.map,s=a.getView();if(s.getConstraints().rotation!==_t){var c=a.getViewport().getBoundingClientRect(),l=co(this.targetPointers);if(l[0]-=c.left,l[1]-=c.top,this.anchor_=a.getCoordinateFromPixel(l),this.rotating_){var u=s.getRotation();a.render(),Ur(s,u+t,this.anchor_)}}},t.prototype.handleUpEvent=function(e){if(this.targetPointers.length<2){var t=e.map.getView();if(t.setHint(Dt,-1),this.rotating_){var i=t.getRotation();Gr(t,i,this.anchor_,this.duration_)}return!1}return!0},t.prototype.handleDownEvent=function(e){if(this.targetPointers.length>=2){var t=e.map;return this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.handlingDownUpSequence||t.getView().setHint(Dt,1),!0}return!1},t}(so),xo=function(e){function t(t){var i=t||{},n=i;n.stopDown||(n.stopDown=A),e.call(this,n),this.constrainResolution_=i.constrainResolution||!1,this.anchor_=null,this.duration_=void 0!==i.duration?i.duration:400,this.lastDistance_=void 0,this.lastScaleDelta_=1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.handleDragEvent=function(e){var t=1,i=this.targetPointers[0],n=this.targetPointers[1],r=i.clientX-n.clientX,o=i.clientY-n.clientY,a=Math.sqrt(r*r+o*o);void 0!==this.lastDistance_&&(t=this.lastDistance_/a),this.lastDistance_=a;var s=e.map,c=s.getView(),l=c.getResolution(),u=c.getMaxResolution(),h=c.getMinResolution(),d=l*t;d>u?(t=u/l,d=u):d<h&&(t=h/l,d=h),1!=t&&(this.lastScaleDelta_=t);var p=s.getViewport().getBoundingClientRect(),m=co(this.targetPointers);m[0]-=p.left,m[1]-=p.top,this.anchor_=s.getCoordinateFromPixel(m),s.render(),Hr(c,d,this.anchor_)},t.prototype.handleUpEvent=function(e){if(this.targetPointers.length<2){var t=e.map.getView();t.setHint(Dt,-1);var i=t.getResolution();if(this.constrainResolution_||i<t.getMinResolution()||i>t.getMaxResolution()){var n=this.lastScaleDelta_-1;Wr(t,i,this.anchor_,this.duration_,n)}return!1}return!0},t.prototype.handleDownEvent=function(e){if(this.targetPointers.length>=2){var t=e.map;return this.anchor_=null,this.lastDistance_=void 0,this.lastScaleDelta_=1,this.handlingDownUpSequence||t.getView().setHint(Dt,1),!0}return!1},t}(so),Eo=function(e){function t(t){if(e.call(this),this.id_=void 0,this.geometryName_="geometry",this.style_=null,this.styleFunction_=void 0,this.geometryChangeKey_=null,S(this,M(this.geometryName_),this.handleGeometryChanged_,this),t)if("function"==typeof t.getSimplifiedGeometry){var i=t;this.setGeometry(i)}else{var n=t;this.setProperties(n)}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clone=function(){var e=new t(this.getProperties());e.setGeometryName(this.getGeometryName());var i=this.getGeometry();i&&e.setGeometry(i.clone());var n=this.getStyle();return n&&e.setStyle(n),e},t.prototype.getGeometry=function(){return this.get(this.geometryName_)},t.prototype.getId=function(){return this.id_},t.prototype.getGeometryName=function(){return this.geometryName_},t.prototype.getStyle=function(){return this.style_},t.prototype.getStyleFunction=function(){return this.styleFunction_},t.prototype.handleGeometryChange_=function(){this.changed()},t.prototype.handleGeometryChanged_=function(){this.geometryChangeKey_&&(_(this.geometryChangeKey_),this.geometryChangeKey_=null);var e=this.getGeometry();e&&(this.geometryChangeKey_=S(e,E.CHANGE,this.handleGeometryChange_,this)),this.changed()},t.prototype.setGeometry=function(e){this.set(this.geometryName_,e)},t.prototype.setStyle=function(e){var t,i;this.style_=e,this.styleFunction_=e?"function"==typeof(t=e)?t:(Array.isArray(t)?i=t:(st("function"==typeof t.getZIndex,41),i=[t]),function(){return i}):void 0,this.changed()},t.prototype.setId=function(e){this.id_=e,this.changed()},t.prototype.setGeometryName=function(e){v(this,M(this.geometryName_),this.handleGeometryChanged_,this),this.geometryName_=e,S(this,M(this.geometryName_),this.handleGeometryChanged_,this),this.handleGeometryChanged_()},t}(q),bo=function(e){function t(t,i,n){if(e.call(this),void 0!==n&&void 0===i)this.setFlatCoordinates(n,t);else{var r=i||0;this.setCenterAndRadius(t,r,n)}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clone=function(){return new t(this.flatCoordinates.slice(),void 0,this.layout)},t.prototype.closestPointXY=function(e,t,i,n){var r=this.flatCoordinates,o=e-r[0],a=t-r[1],s=o*o+a*a;if(s<n){if(0===s)for(var c=0;c<this.stride;++c)i[c]=r[c];else{var l=this.getRadius()/Math.sqrt(s);i[0]=r[0]+l*o,i[1]=r[1]+l*a;for(var u=2;u<this.stride;++u)i[u]=r[u]}return i.length=this.stride,s}return n},t.prototype.containsXY=function(e,t){var i=this.flatCoordinates,n=e-i[0],r=t-i[1];return n*n+r*r<=this.getRadiusSquared_()},t.prototype.getCenter=function(){return this.flatCoordinates.slice(0,this.stride)},t.prototype.computeExtent=function(e){var t=this.flatCoordinates,i=t[this.stride]-t[0];return Kt(t[0]-i,t[1]-i,t[0]+i,t[1]+i,e)},t.prototype.getRadius=function(){return Math.sqrt(this.getRadiusSquared_())},t.prototype.getRadiusSquared_=function(){var e=this.flatCoordinates[this.stride]-this.flatCoordinates[0],t=this.flatCoordinates[this.stride+1]-this.flatCoordinates[1];return e*e+t*t},t.prototype.getType=function(){return _i.CIRCLE},t.prototype.intersectsExtent=function(e){if(Si(e,this.getExtent())){var t=this.getCenter();return e[0]<=t[0]&&e[2]>=t[0]||e[1]<=t[1]&&e[3]>=t[1]||oi(e,this.intersectsCoordinate,this)}return!1},t.prototype.setCenter=function(e){var t=this.stride,i=this.flatCoordinates[t]-this.flatCoordinates[0],n=e.slice();n[t]=n[0]+i;for(var r=1;r<t;++r)n[t+r]=e[r];this.setFlatCoordinates(this.layout,n),this.changed()},t.prototype.setCenterAndRadius=function(e,t,i){this.setLayout(i,e,0),this.flatCoordinates||(this.flatCoordinates=[]);var n=this.flatCoordinates,r=In(n,0,e,this.stride);n[r++]=n[0]+t;for(var o=1,a=this.stride;o<a;++o)n[r++]=n[o];n.length=r,this.changed()},t.prototype.getCoordinates=function(){return null},t.prototype.setCoordinates=function(e,t){},t.prototype.setRadius=function(e){this.flatCoordinates[this.stride]=this.flatCoordinates[0]+e,this.changed()},t}(gn);function Oo(e,t,i,n,r,o){var a=NaN,s=NaN,c=(i-t)/n;if(1===c)a=e[t],s=e[t+1];else if(2==c)a=(1-r)*e[t]+r*e[t+n],s=(1-r)*e[t+1]+r*e[t+n+1];else if(0!==c){for(var l=e[t],u=e[t+1],h=0,d=[0],p=t+n;p<i;p+=n){var m=e[p],f=e[p+1];h+=Math.sqrt((m-l)*(m-l)+(f-u)*(f-u)),d.push(h),l=m,u=f}var g=r*h,S=function(e,t,i){for(var n,r,o=i||Ve,a=0,s=e.length,c=!1;a<s;)(r=+o(e[n=a+(s-a>>1)],t))<0?a=n+1:(s=n,c=!r);return c?a:~a}(d,g);if(S<0){var y=(g-d[-S-2])/(d[-S-1]-d[-S-2]),v=t+(-S-2)*n;a=yt(e[v],e[v+n],y),s=yt(e[v+1],e[v+n+1],y)}else a=e[t+S*n],s=e[t+S*n+1]}return o?(o[0]=a,o[1]=s,o):[a,s]}function qo(e,t,i,n,r,o){if(i==t)return null;var a;if(r<e[t+n-1])return o?((a=e.slice(t,t+n))[n-1]=r,a):null;if(e[i-1]<r)return o?((a=e.slice(i-n,i))[n-1]=r,a):null;if(r==e[t+n-1])return e.slice(t,t+n);for(var s=t/n,c=i/n;s<c;){var l=s+c>>1;r<e[(l+1)*n-1]?c=l:s=l+1}var u=e[s*n-1];if(r==u)return e.slice((s-1)*n,(s-1)*n+n);var h=(r-u)/(e[(s+1)*n-1]-u);a=[];for(var d=0;d<n-1;++d)a.push(yt(e[(s-1)*n+d],e[s*n+d],h));return a.push(r),a}function Fo(e,t,i,n){for(var r=e[t],o=e[t+1],a=0,s=t+n;s<i;s+=n){var c=e[s],l=e[s+1];a+=Math.sqrt((c-r)*(c-r)+(l-o)*(l-o)),r=c,o=l}return a}bo.prototype.transform;var Mo=function(e){function t(t,i){e.call(this),this.flatMidpoint_=null,this.flatMidpointRevision_=-1,this.maxDelta_=-1,this.maxDeltaRevision_=-1,void 0===i||Array.isArray(t[0])?this.setCoordinates(t,i):this.setFlatCoordinates(i,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.appendCoordinate=function(e){this.flatCoordinates?We(this.flatCoordinates,e):this.flatCoordinates=e.slice(),this.changed()},t.prototype.clone=function(){return new t(this.flatCoordinates.slice(),this.layout)},t.prototype.closestPointXY=function(e,t,i,n){return n<zt(this.getExtent(),e,t)?n:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(Cn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),Dn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,this.maxDelta_,!1,e,t,i,n))},t.prototype.forEachSegment=function(e){return Gn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,e)},t.prototype.getCoordinateAtM=function(e,t){if(this.layout!=Ci.XYM&&this.layout!=Ci.XYZM)return null;var i=void 0!==t&&t;return qo(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,e,i)},t.prototype.getCoordinates=function(){return xn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},t.prototype.getCoordinateAt=function(e,t){return Oo(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,e,t)},t.prototype.getLength=function(){return Fo(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},t.prototype.getFlatMidpoint=function(){return this.flatMidpointRevision_!=this.getRevision()&&(this.flatMidpoint_=this.getCoordinateAt(.5,this.flatMidpoint_),this.flatMidpointRevision_=this.getRevision()),this.flatMidpoint_},t.prototype.getSimplifiedGeometryInternal=function(e){var i=[];return i.length=On(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,e,i,0),new t(i,Ci.XY)},t.prototype.getType=function(){return _i.LINE_STRING},t.prototype.intersectsExtent=function(e){return Un(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,e)},t.prototype.setCoordinates=function(e,t){this.setLayout(t,e,1),this.flatCoordinates||(this.flatCoordinates=[]),this.flatCoordinates.length=Pn(this.flatCoordinates,0,e,this.stride),this.changed()},t}(gn),Lo=function(e){function t(t,i,n){if(e.call(this),this.ends_=[],this.maxDelta_=-1,this.maxDeltaRevision_=-1,Array.isArray(t[0]))this.setCoordinates(t,i);else if(void 0!==i&&n)this.setFlatCoordinates(i,t),this.ends_=n;else{for(var r=this.getLayout(),o=t,a=[],s=[],c=0,l=o.length;c<l;++c){var u=o[c];0===c&&(r=u.getLayout()),We(a,u.getFlatCoordinates()),s.push(a.length)}this.setFlatCoordinates(r,a),this.ends_=s}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.appendLineString=function(e){this.flatCoordinates?We(this.flatCoordinates,e.getFlatCoordinates().slice()):this.flatCoordinates=e.getFlatCoordinates().slice(),this.ends_.push(this.flatCoordinates.length),this.changed()},t.prototype.clone=function(){return new t(this.flatCoordinates.slice(),this.layout,this.ends_.slice())},t.prototype.closestPointXY=function(e,t,i,n){return n<zt(this.getExtent(),e,t)?n:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(Tn(this.flatCoordinates,0,this.ends_,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),An(this.flatCoordinates,0,this.ends_,this.stride,this.maxDelta_,!1,e,t,i,n))},t.prototype.getCoordinateAtM=function(e,t,i){if(this.layout!=Ci.XYM&&this.layout!=Ci.XYZM||0===this.flatCoordinates.length)return null;var n=void 0!==t&&t,r=void 0!==i&&i;return function(e,t,i,n,r,o,a){if(a)return qo(e,t,i[i.length-1],n,r,o);var s;if(r<e[n-1])return o?((s=e.slice(0,n))[n-1]=r,s):null;if(e[e.length-1]<r)return o?((s=e.slice(e.length-n))[n-1]=r,s):null;for(var c=0,l=i.length;c<l;++c){var u=i[c];if(t!=u){if(r<e[t+n-1])return null;if(r<=e[u-1])return qo(e,t,u,n,r,!1);t=u}}return null}(this.flatCoordinates,0,this.ends_,this.stride,e,n,r)},t.prototype.getCoordinates=function(){return En(this.flatCoordinates,0,this.ends_,this.stride)},t.prototype.getEnds=function(){return this.ends_},t.prototype.getLineString=function(e){return e<0||this.ends_.length<=e?null:new Mo(this.flatCoordinates.slice(0===e?0:this.ends_[e-1],this.ends_[e]),this.layout)},t.prototype.getLineStrings=function(){for(var e=this.flatCoordinates,t=this.ends_,i=this.layout,n=[],r=0,o=0,a=t.length;o<a;++o){var s=t[o],c=new Mo(e.slice(r,s),i);n.push(c),r=s}return n},t.prototype.getFlatMidpoints=function(){for(var e=[],t=this.flatCoordinates,i=0,n=this.ends_,r=this.stride,o=0,a=n.length;o<a;++o){var s=n[o];We(e,Oo(t,i,s,r,.5)),i=s}return e},t.prototype.getSimplifiedGeometryInternal=function(e){var i=[],n=[];return i.length=function(e,t,i,n,r,o,a,s){for(var c=0,l=i.length;c<l;++c){var u=i[c];a=On(e,t,u,n,r,o,a),s.push(a),t=u}return a}(this.flatCoordinates,0,this.ends_,this.stride,e,i,0,n),new t(i,Ci.XY,n)},t.prototype.getType=function(){return _i.MULTI_LINE_STRING},t.prototype.intersectsExtent=function(e){return function(e,t,i,n,r){for(var o=0,a=i.length;o<a;++o){if(Un(e,t,i[o],n,r))return!0;t=i[o]}return!1}(this.flatCoordinates,0,this.ends_,this.stride,e)},t.prototype.setCoordinates=function(e,t){this.setLayout(t,e,2),this.flatCoordinates||(this.flatCoordinates=[]);var i=Rn(this.flatCoordinates,0,e,this.stride,this.ends_);this.flatCoordinates.length=0===i.length?0:i[i.length-1],this.changed()},t}(gn),wo=function(e){function t(t,i){e.call(this),i&&!Array.isArray(t[0])?this.setFlatCoordinates(i,t):this.setCoordinates(t,i)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.appendPoint=function(e){this.flatCoordinates?We(this.flatCoordinates,e.getFlatCoordinates()):this.flatCoordinates=e.getFlatCoordinates().slice(),this.changed()},t.prototype.clone=function(){return new t(this.flatCoordinates.slice(),this.layout)},t.prototype.closestPointXY=function(e,t,i,n){if(n<zt(this.getExtent(),e,t))return n;for(var r=this.flatCoordinates,o=this.stride,a=0,s=r.length;a<s;a+=o){var c=ft(e,t,r[a],r[a+1]);if(c<n){n=c;for(var l=0;l<o;++l)i[l]=r[a+l];i.length=o}}return n},t.prototype.getCoordinates=function(){return xn(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},t.prototype.getPoint=function(e){var t=this.flatCoordinates?this.flatCoordinates.length/this.stride:0;return e<0||t<=e?null:new wn(this.flatCoordinates.slice(e*this.stride,(e+1)*this.stride),this.layout)},t.prototype.getPoints=function(){for(var e=this.flatCoordinates,t=this.layout,i=this.stride,n=[],r=0,o=e.length;r<o;r+=i){var a=new wn(e.slice(r,r+i),t);n.push(a)}return n},t.prototype.getType=function(){return _i.MULTI_POINT},t.prototype.intersectsExtent=function(e){for(var t=this.flatCoordinates,i=this.stride,n=0,r=t.length;n<r;n+=i)if(Xt(e,t[n],t[n+1]))return!0;return!1},t.prototype.setCoordinates=function(e,t){this.setLayout(t,e,1),this.flatCoordinates||(this.flatCoordinates=[]),this.flatCoordinates.length=Pn(this.flatCoordinates,0,e,this.stride),this.changed()},t}(gn),No=function(e){function t(t,i,n){if(e.call(this),this.endss_=[],this.flatInteriorPointsRevision_=-1,this.flatInteriorPoints_=null,this.maxDelta_=-1,this.maxDeltaRevision_=-1,this.orientedRevision_=-1,this.orientedFlatCoordinates_=null,!n&&!Array.isArray(t[0])){for(var r=this.getLayout(),o=t,a=[],s=[],c=0,l=o.length;c<l;++c){var u=o[c];0===c&&(r=u.getLayout());for(var h=a.length,d=u.getEnds(),p=0,m=d.length;p<m;++p)d[p]+=h;We(a,u.getFlatCoordinates()),s.push(d)}i=r,t=a,n=s}void 0!==i&&n?(this.setFlatCoordinates(i,t),this.endss_=n):this.setCoordinates(t,i)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.appendPolygon=function(e){var t;if(this.flatCoordinates){var i=this.flatCoordinates.length;We(this.flatCoordinates,e.getFlatCoordinates());for(var n=0,r=(t=e.getEnds().slice()).length;n<r;++n)t[n]+=i}else this.flatCoordinates=e.getFlatCoordinates().slice(),t=e.getEnds().slice(),this.endss_.push();this.endss_.push(t),this.changed()},t.prototype.clone=function(){for(var e=this.endss_.length,i=new Array(e),n=0;n<e;++n)i[n]=this.endss_[n].slice();return new t(this.flatCoordinates.slice(),this.layout,i)},t.prototype.closestPointXY=function(e,t,i,n){return n<zt(this.getExtent(),e,t)?n:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(function(e,t,i,n,r){for(var o=0,a=i.length;o<a;++o){var s=i[o];r=Tn(e,t,s,n,r),t=s[s.length-1]}return r}(this.flatCoordinates,0,this.endss_,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),function(e,t,i,n,r,o,a,s,c,l,u){for(var h=u||[NaN,NaN],d=0,p=i.length;d<p;++d){var m=i[d];l=An(e,t,m,n,r,o,a,s,c,l,h),t=m[m.length-1]}return l}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride,this.maxDelta_,!0,e,t,i,n))},t.prototype.containsXY=function(e,t){return function(e,t,i,n,r,o){if(0===i.length)return!1;for(var a=0,s=i.length;a<s;++a){var c=i[a];if(Vn(e,t,c,n,r,o))return!0;t=c[c.length-1]}return!1}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride,e,t)},t.prototype.getArea=function(){return function(e,t,i,n){for(var r=0,o=0,a=i.length;o<a;++o){var s=i[o];r+=vn(e,t,s,n),t=s[s.length-1]}return r}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride)},t.prototype.getCoordinates=function(e){var t;return void 0!==e?Yn(t=this.getOrientedFlatCoordinates().slice(),0,this.endss_,this.stride,e):t=this.flatCoordinates,bn(t,0,this.endss_,this.stride)},t.prototype.getEndss=function(){return this.endss_},t.prototype.getFlatInteriorPoints=function(){if(this.flatInteriorPointsRevision_!=this.getRevision()){var e=function(e,t,i,n){for(var r=[],o=[1/0,1/0,-1/0,-1/0],a=0,s=i.length;a<s;++a){var c=i[a];o=$t(e,t,c[0],n),r.push((o[0]+o[2])/2,(o[1]+o[3])/2),t=c[c.length-1]}return r}(this.flatCoordinates,0,this.endss_,this.stride);this.flatInteriorPoints_=function(e,t,i,n,r){for(var o=[],a=0,s=i.length;a<s;++a){var c=i[a];o=kn(e,t,c,n,r,2*a,o),t=c[c.length-1]}return o}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride,e),this.flatInteriorPointsRevision_=this.getRevision()}return this.flatInteriorPoints_},t.prototype.getInteriorPoints=function(){return new wo(this.getFlatInteriorPoints().slice(),Ci.XYM)},t.prototype.getOrientedFlatCoordinates=function(){if(this.orientedRevision_!=this.getRevision()){var e=this.flatCoordinates;!function(e,t,i,n,r){for(var o=0,a=i.length;o<a;++o)if(!jn(e,t,i[o],n,r))return!1;return!0}(e,0,this.endss_,this.stride)?(this.orientedFlatCoordinates_=e.slice(),this.orientedFlatCoordinates_.length=Yn(this.orientedFlatCoordinates_,0,this.endss_,this.stride)):this.orientedFlatCoordinates_=e,this.orientedRevision_=this.getRevision()}return this.orientedFlatCoordinates_},t.prototype.getSimplifiedGeometryInternal=function(e){var i=[],n=[];return i.length=function(e,t,i,n,r,o,a,s){for(var c=0,l=i.length;c<l;++c){var u=i[c],h=[];a=Mn(e,t,u,n,r,o,a,h),s.push(h),t=u[u.length-1]}return a}(this.flatCoordinates,0,this.endss_,this.stride,Math.sqrt(e),i,0,n),new t(i,Ci.XY,n)},t.prototype.getPolygon=function(e){if(e<0||this.endss_.length<=e)return null;var t;if(0===e)t=0;else{var i=this.endss_[e-1];t=i[i.length-1]}var n=this.endss_[e].slice(),r=n[n.length-1];if(0!==t)for(var o=0,a=n.length;o<a;++o)n[o]-=t;return new Kn(this.flatCoordinates.slice(t,r),this.layout,n)},t.prototype.getPolygons=function(){for(var e=this.layout,t=this.flatCoordinates,i=this.endss_,n=[],r=0,o=0,a=i.length;o<a;++o){var s=i[o].slice(),c=s[s.length-1];if(0!==r)for(var l=0,u=s.length;l<u;++l)s[l]-=r;var h=new Kn(t.slice(r,c),e,s);n.push(h),r=c}return n},t.prototype.getType=function(){return _i.MULTI_POLYGON},t.prototype.intersectsExtent=function(e){return function(e,t,i,n,r){for(var o=0,a=i.length;o<a;++o){var s=i[o];if(Wn(e,t,s,n,r))return!0;t=s[s.length-1]}return!1}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride,e)},t.prototype.setCoordinates=function(e,t){this.setLayout(t,e,3),this.flatCoordinates||(this.flatCoordinates=[]);var i=function(e,t,i,n,r){for(var o=r||[],a=0,s=0,c=i.length;s<c;++s){var l=Rn(e,t,i[s],n,o[a]);o[a++]=l,t=l[l.length-1]}return o.length=a,o}(this.flatCoordinates,0,e,this.stride,this.endss_);if(0===i.length)this.flatCoordinates.length=0;else{var n=i[i.length-1];this.flatCoordinates.length=0===n.length?0:n[n.length-1]}this.changed()},t}(gn),Bo={IMAGE:"IMAGE",TILE:"TILE",VECTOR_TILE:"VECTOR_TILE",VECTOR:"VECTOR"},Vo={IMAGE:"image",VECTOR:"vector"},ko=/^#([a-f0-9]{3}|[a-f0-9]{4}(?:[a-f0-9]{2}){0,2})$/i,Go=/^([a-z]*)$/i;function Uo(e){return"string"==typeof e?e:jo(e)}var Wo=function(){var e={},t=0;return function(i){var n;if(e.hasOwnProperty(i))n=e[i];else{if(t>=1024){var r=0;for(var o in e)0==(3&r++)&&(delete e[o],--t)}n=function(e){var t,i,n,r,o;if(Go.exec(e)&&(e=function(e){var t=document.createElement("div");if(t.style.color=e,""!==t.style.color){document.body.appendChild(t);var i=getComputedStyle(t).color;return document.body.removeChild(t),i}return""}(e)),ko.exec(e)){var a,s=e.length-1;a=s<=4?1:2;var c=4===s||8===s;t=parseInt(e.substr(1+0*a,a),16),i=parseInt(e.substr(1+1*a,a),16),n=parseInt(e.substr(1+2*a,a),16),r=c?parseInt(e.substr(1+3*a,a),16):255,1==a&&(t=(t<<4)+t,i=(i<<4)+i,n=(n<<4)+n,c&&(r=(r<<4)+r)),o=[t,i,n,r/255]}else 0==e.indexOf("rgba(")?Ho(o=e.slice(5,-1).split(",").map(Number)):0==e.indexOf("rgb(")?((o=e.slice(4,-1).split(",").map(Number)).push(1),Ho(o)):st(!1,14);return o}(i),e[i]=n,++t}return n}}();function zo(e){return Array.isArray(e)?e:Wo(e)}function Ho(e){return e[0]=dt(e[0]+.5|0,0,255),e[1]=dt(e[1]+.5|0,0,255),e[2]=dt(e[2]+.5|0,0,255),e[3]=dt(e[3],0,1),e}function jo(e){var t=e[0];t!=(0|t)&&(t=t+.5|0);var i=e[1];i!=(0|i)&&(i=i+.5|0);var n=e[2];return n!=(0|n)&&(n=n+.5|0),"rgba("+t+","+i+","+n+","+(void 0===e[3]?1:e[3])+")"}function Xo(e){return Array.isArray(e)?jo(e):e}var Yo={IDLE:0,LOADING:1,LOADED:2,ERROR:3},Ko=function(e){function t(t){e.call(this),this.highWaterMark=void 0!==t?t:2048,this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.canExpireCache=function(){return this.getCount()>this.highWaterMark},t.prototype.clear=function(){this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null,this.dispatchEvent(E.CLEAR)},t.prototype.containsKey=function(e){return this.entries_.hasOwnProperty(e)},t.prototype.forEach=function(e,t){for(var i=this.oldest_;i;)e.call(t,i.value_,i.key_,this),i=i.newer},t.prototype.get=function(e){var t=this.entries_[e];return st(void 0!==t,15),t===this.newest_?t.value_:(t===this.oldest_?(this.oldest_=this.oldest_.newer,this.oldest_.older=null):(t.newer.older=t.older,t.older.newer=t.newer),t.newer=null,t.older=this.newest_,this.newest_.newer=t,this.newest_=t,t.value_)},t.prototype.remove=function(e){var t=this.entries_[e];return st(void 0!==t,15),t===this.newest_?(this.newest_=t.older,this.newest_&&(this.newest_.newer=null)):t===this.oldest_?(this.oldest_=t.newer,this.oldest_&&(this.oldest_.older=null)):(t.newer.older=t.older,t.older.newer=t.newer),delete this.entries_[e],--this.count_,t.value_},t.prototype.getCount=function(){return this.count_},t.prototype.getKeys=function(){var e,t=new Array(this.count_),i=0;for(e=this.newest_;e;e=e.older)t[i++]=e.key_;return t},t.prototype.getValues=function(){var e,t=new Array(this.count_),i=0;for(e=this.newest_;e;e=e.older)t[i++]=e.value_;return t},t.prototype.peekLast=function(){return this.oldest_.value_},t.prototype.peekLastKey=function(){return this.oldest_.key_},t.prototype.peekFirstKey=function(){return this.newest_.key_},t.prototype.pop=function(){var e=this.oldest_;return delete this.entries_[e.key_],e.newer&&(e.newer.older=null),this.oldest_=e.newer,this.oldest_||(this.newest_=null),--this.count_,e.value_},t.prototype.replace=function(e,t){this.get(e),this.entries_[e].value_=t},t.prototype.set=function(e,t){st(!(e in this.entries_),16);var i={key_:e,newer:null,older:this.newest_,value_:t};this.newest_?this.newest_.newer=i:this.oldest_=i,this.newest_=i,this.entries_[e]=i,++this.count_},t.prototype.setSize=function(e){this.highWaterMark=e},t.prototype.prune=function(){for(;this.canExpireCache();)this.pop()},t}(x),Zo=[0,0,0,1],Qo=[],Jo=[0,0,0,1],$o=[0,0,0,0],ea=new Ko,ta={},ia=null,na={},ra=function(){var e,t,i=60,n=ta,r="32px ",o=["monospace","serif"],a=o.length,s="wmytzilWMYTZIL@#/&?$%10";function c(e){for(var i=oa(),n=100;n<=700;n+=300){for(var c=n+" ",l=!0,u=0;u<a;++u){var h=o[u];if(i.font=c+r+h,t=i.measureText(s).width,e!=h){i.font=c+r+e+","+h;var d=i.measureText(s).width;l=l&&d!=t}}if(l)return!0}return!1}function l(){var t=!0;for(var r in n)n[r]<i&&(c(r)?(n[r]=i,u(na),ia=null,ea.clear()):(++n[r],t=!1));t&&(clearInterval(e),e=void 0)}return function(t){var r=Dr(t);if(r)for(var o=0,a=r.length;o<a;++o){var s=r[o];s in n||(n[s]=i,c(s)||(n[s]=0,void 0===e&&(e=setInterval(l,32))))}}}();function oa(){return ia||(ia=nr(1,1)),ia}var aa,sa,ca=(sa=na,function(e){var t=sa[e];return null==t&&(aa||((aa=document.createElement("span")).textContent="M",aa.style.margin=aa.style.padding="0 !important",aa.style.position="absolute !important",aa.style.left="-99999px !important"),aa.style.font=e,document.body.appendChild(aa),t=sa[e]=aa.offsetHeight,document.body.removeChild(aa)),t});function la(e,t){var i=oa();return e!=i.font&&(i.font=e),i.measureText(t).width}function ua(e,t,i,n){0!==t&&(e.translate(i,n),e.rotate(t),e.translate(-i,-n))}var ha=[1,0,0,1,0,0];function da(e,t,i,n,r,o,a,s,c,l,u){var h;1!=i&&(h=e.globalAlpha,e.globalAlpha=h*i),t&&e.setTransform.apply(e,t),e.drawImage(n,r,o,a,s,c,l,a*u,s*u),h&&(e.globalAlpha=h),t&&e.setTransform.apply(e,ha)}var pa=function(e){this.opacity_=e.opacity,this.rotateWithView_=e.rotateWithView,this.rotation_=e.rotation,this.scale_=e.scale};pa.prototype.clone=function(){return new pa({opacity:this.getOpacity(),scale:this.getScale(),rotation:this.getRotation(),rotateWithView:this.getRotateWithView()})},pa.prototype.getOpacity=function(){return this.opacity_},pa.prototype.getRotateWithView=function(){return this.rotateWithView_},pa.prototype.getRotation=function(){return this.rotation_},pa.prototype.getScale=function(){return this.scale_},pa.prototype.getSnapToPixel=function(){return!1},pa.prototype.getAnchor=function(){return i()},pa.prototype.getImage=function(e){return i()},pa.prototype.getHitDetectionImage=function(e){return i()},pa.prototype.getImageState=function(){return i()},pa.prototype.getImageSize=function(){return i()},pa.prototype.getHitDetectionImageSize=function(){return i()},pa.prototype.getOrigin=function(){return i()},pa.prototype.getSize=function(){return i()},pa.prototype.setOpacity=function(e){this.opacity_=e},pa.prototype.setRotateWithView=function(e){this.rotateWithView_=e},pa.prototype.setRotation=function(e){this.rotation_=e},pa.prototype.setScale=function(e){this.scale_=e},pa.prototype.setSnapToPixel=function(e){},pa.prototype.listenImageChange=function(e,t){return i()},pa.prototype.load=function(){i()},pa.prototype.unlistenImageChange=function(e,t){i()};var ma=function(e){function t(t){var i=t||{};e.call(this,{points:1/0,fill:i.fill,radius:i.radius,stroke:i.stroke,atlasManager:i.atlasManager})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clone=function(){var e=new t({fill:this.getFill()?this.getFill().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,radius:this.getRadius(),atlasManager:this.atlasManager_});return e.setOpacity(this.getOpacity()),e.setScale(this.getScale()),e},t.prototype.setRadius=function(e){this.radius_=e,this.render_(this.atlasManager_)},t}(function(e){function t(t){var i=void 0!==t.rotateWithView&&t.rotateWithView;e.call(this,{opacity:1,rotateWithView:i,rotation:void 0!==t.rotation?t.rotation:0,scale:1}),this.checksums_=null,this.canvas_=null,this.hitDetectionCanvas_=null,this.fill_=void 0!==t.fill?t.fill:null,this.origin_=[0,0],this.points_=t.points,this.radius_=void 0!==t.radius?t.radius:t.radius1,this.radius2_=t.radius2,this.angle_=void 0!==t.angle?t.angle:0,this.stroke_=void 0!==t.stroke?t.stroke:null,this.anchor_=null,this.size_=null,this.imageSize_=null,this.hitDetectionImageSize_=null,this.atlasManager_=t.atlasManager,this.render_(this.atlasManager_)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clone=function(){var e=new t({fill:this.getFill()?this.getFill().clone():void 0,points:this.getPoints(),radius:this.getRadius(),radius2:this.getRadius2(),angle:this.getAngle(),stroke:this.getStroke()?this.getStroke().clone():void 0,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),atlasManager:this.atlasManager_});return e.setOpacity(this.getOpacity()),e.setScale(this.getScale()),e},t.prototype.getAnchor=function(){return this.anchor_},t.prototype.getAngle=function(){return this.angle_},t.prototype.getFill=function(){return this.fill_},t.prototype.getHitDetectionImage=function(e){return this.hitDetectionCanvas_},t.prototype.getImage=function(e){return this.canvas_},t.prototype.getImageSize=function(){return this.imageSize_},t.prototype.getHitDetectionImageSize=function(){return this.hitDetectionImageSize_},t.prototype.getImageState=function(){return Yo.LOADED},t.prototype.getOrigin=function(){return this.origin_},t.prototype.getPoints=function(){return this.points_},t.prototype.getRadius=function(){return this.radius_},t.prototype.getRadius2=function(){return this.radius2_},t.prototype.getSize=function(){return this.size_},t.prototype.getStroke=function(){return this.stroke_},t.prototype.listenImageChange=function(e,t){},t.prototype.load=function(){},t.prototype.unlistenImageChange=function(e,t){},t.prototype.render_=function(e){var t,i,n="",r="",o=0,a=null,s=0,c=0;this.stroke_&&(null===(i=this.stroke_.getColor())&&(i=Jo),i=Xo(i),void 0===(c=this.stroke_.getWidth())&&(c=1),a=this.stroke_.getLineDash(),s=this.stroke_.getLineDashOffset(),te||(a=null,s=0),void 0===(r=this.stroke_.getLineJoin())&&(r="round"),void 0===(n=this.stroke_.getLineCap())&&(n="round"),void 0===(o=this.stroke_.getMiterLimit())&&(o=10));var l=2*(this.radius_+c)+1,u={strokeStyle:i,strokeWidth:c,size:l,lineCap:n,lineDash:a,lineDashOffset:s,lineJoin:r,miterLimit:o};if(void 0===e){var h=nr(l,l);this.canvas_=h.canvas,t=l=this.canvas_.width,this.draw_(u,h,0,0),this.createHitDetectionCanvas_(u)}else{l=Math.round(l);var d,p=!this.fill_;p&&(d=this.drawHitDetectionCanvas_.bind(this,u));var m=this.getChecksum(),f=e.add(m,l,l,this.draw_.bind(this,u),d);this.canvas_=f.image,this.origin_=[f.offsetX,f.offsetY],t=f.image.width,p?(this.hitDetectionCanvas_=f.hitImage,this.hitDetectionImageSize_=[f.hitImage.width,f.hitImage.height]):(this.hitDetectionCanvas_=this.canvas_,this.hitDetectionImageSize_=[t,t])}this.anchor_=[l/2,l/2],this.size_=[l,l],this.imageSize_=[t,t]},t.prototype.draw_=function(e,t,i,n){var r,o,a;t.setTransform(1,0,0,1,0,0),t.translate(i,n),t.beginPath();var s=this.points_;if(s===1/0)t.arc(e.size/2,e.size/2,this.radius_,0,2*Math.PI,!0);else{var c=void 0!==this.radius2_?this.radius2_:this.radius_;for(c!==this.radius_&&(s*=2),r=0;r<=s;r++)o=2*r*Math.PI/s-Math.PI/2+this.angle_,a=r%2==0?this.radius_:c,t.lineTo(e.size/2+a*Math.cos(o),e.size/2+a*Math.sin(o))}if(this.fill_){var l=this.fill_.getColor();null===l&&(l=Zo),t.fillStyle=Xo(l),t.fill()}this.stroke_&&(t.strokeStyle=e.strokeStyle,t.lineWidth=e.strokeWidth,e.lineDash&&(t.setLineDash(e.lineDash),t.lineDashOffset=e.lineDashOffset),t.lineCap=e.lineCap,t.lineJoin=e.lineJoin,t.miterLimit=e.miterLimit,t.stroke()),t.closePath()},t.prototype.createHitDetectionCanvas_=function(e){if(this.hitDetectionImageSize_=[e.size,e.size],this.fill_)this.hitDetectionCanvas_=this.canvas_;else{var t=nr(e.size,e.size);this.hitDetectionCanvas_=t.canvas,this.drawHitDetectionCanvas_(e,t,0,0)}},t.prototype.drawHitDetectionCanvas_=function(e,t,i,n){t.setTransform(1,0,0,1,0,0),t.translate(i,n),t.beginPath();var r=this.points_;if(r===1/0)t.arc(e.size/2,e.size/2,this.radius_,0,2*Math.PI,!0);else{var o,a,s,c=void 0!==this.radius2_?this.radius2_:this.radius_;for(c!==this.radius_&&(r*=2),o=0;o<=r;o++)s=2*o*Math.PI/r-Math.PI/2+this.angle_,a=o%2==0?this.radius_:c,t.lineTo(e.size/2+a*Math.cos(s),e.size/2+a*Math.sin(s))}t.fillStyle=Uo(Zo),t.fill(),this.stroke_&&(t.strokeStyle=e.strokeStyle,t.lineWidth=e.strokeWidth,e.lineDash&&(t.setLineDash(e.lineDash),t.lineDashOffset=e.lineDashOffset),t.stroke()),t.closePath()},t.prototype.getChecksum=function(){var e=this.stroke_?this.stroke_.getChecksum():"-",t=this.fill_?this.fill_.getChecksum():"-";if(!this.checksums_||e!=this.checksums_[1]||t!=this.checksums_[2]||this.radius_!=this.checksums_[3]||this.radius2_!=this.checksums_[4]||this.angle_!=this.checksums_[5]||this.points_!=this.checksums_[6]){var i="r"+e+t+(void 0!==this.radius_?this.radius_.toString():"-")+(void 0!==this.radius2_?this.radius2_.toString():"-")+(void 0!==this.angle_?this.angle_.toString():"-")+(void 0!==this.points_?this.points_.toString():"-");this.checksums_=[i,e,t,this.radius_,this.radius2_,this.angle_,this.points_]}return(this.checksums_[0])},t}(pa)),fa=function(e){var t=e||{};this.color_=void 0!==t.color?t.color:null,this.checksum_=void 0};fa.prototype.clone=function(){var e=this.getColor();return new fa({color:Array.isArray(e)?e.slice():e||void 0})},fa.prototype.getColor=function(){return this.color_},fa.prototype.setColor=function(e){this.color_=e,this.checksum_=void 0},fa.prototype.getChecksum=function(){if(void 0===this.checksum_){var e=this.color_;e?Array.isArray(e)||"string"==typeof e?this.checksum_="f"+Uo(e):this.checksum_=r(this.color_):this.checksum_="f-"}return this.checksum_};var ga=function(e){var t=e||{};this.color_=void 0!==t.color?t.color:null,this.lineCap_=t.lineCap,this.lineDash_=void 0!==t.lineDash?t.lineDash:null,this.lineDashOffset_=t.lineDashOffset,this.lineJoin_=t.lineJoin,this.miterLimit_=t.miterLimit,this.width_=t.width,this.checksum_=void 0};ga.prototype.clone=function(){var e=this.getColor();return new ga({color:Array.isArray(e)?e.slice():e||void 0,lineCap:this.getLineCap(),lineDash:this.getLineDash()?this.getLineDash().slice():void 0,lineDashOffset:this.getLineDashOffset(),lineJoin:this.getLineJoin(),miterLimit:this.getMiterLimit(),width:this.getWidth()})},ga.prototype.getColor=function(){return this.color_},ga.prototype.getLineCap=function(){return this.lineCap_},ga.prototype.getLineDash=function(){return this.lineDash_},ga.prototype.getLineDashOffset=function(){return this.lineDashOffset_},ga.prototype.getLineJoin=function(){return this.lineJoin_},ga.prototype.getMiterLimit=function(){return this.miterLimit_},ga.prototype.getWidth=function(){return this.width_},ga.prototype.setColor=function(e){this.color_=e,this.checksum_=void 0},ga.prototype.setLineCap=function(e){this.lineCap_=e,this.checksum_=void 0},ga.prototype.setLineDash=function(e){this.lineDash_=e,this.checksum_=void 0},ga.prototype.setLineDashOffset=function(e){this.lineDashOffset_=e,this.checksum_=void 0},ga.prototype.setLineJoin=function(e){this.lineJoin_=e,this.checksum_=void 0},ga.prototype.setMiterLimit=function(e){this.miterLimit_=e,this.checksum_=void 0},ga.prototype.setWidth=function(e){this.width_=e,this.checksum_=void 0},ga.prototype.getChecksum=function(){return void 0===this.checksum_&&(this.checksum_="s",this.color_?"string"==typeof this.color_?this.checksum_+=this.color_:this.checksum_+=r(this.color_):this.checksum_+="-",this.checksum_+=","+(void 0!==this.lineCap_?this.lineCap_.toString():"-")+","+(this.lineDash_?this.lineDash_.toString():"-")+","+(void 0!==this.lineDashOffset_?this.lineDashOffset_:"-")+","+(void 0!==this.lineJoin_?this.lineJoin_:"-")+","+(void 0!==this.miterLimit_?this.miterLimit_.toString():"-")+","+(void 0!==this.width_?this.width_.toString():"-")),this.checksum_};var Sa=function(e){var t=e||{};this.geometry_=null,this.geometryFunction_=Ca,void 0!==t.geometry&&this.setGeometry(t.geometry),this.fill_=void 0!==t.fill?t.fill:null,this.image_=void 0!==t.image?t.image:null,this.renderer_=void 0!==t.renderer?t.renderer:null,this.stroke_=void 0!==t.stroke?t.stroke:null,this.text_=void 0!==t.text?t.text:null,this.zIndex_=t.zIndex};Sa.prototype.clone=function(){var e=this.getGeometry();return e&&"object"==typeof e&&(e=e.clone()),new Sa({geometry:e,fill:this.getFill()?this.getFill().clone():void 0,image:this.getImage()?this.getImage().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,text:this.getText()?this.getText().clone():void 0,zIndex:this.getZIndex()})},Sa.prototype.getRenderer=function(){return this.renderer_},Sa.prototype.setRenderer=function(e){this.renderer_=e},Sa.prototype.getGeometry=function(){return this.geometry_},Sa.prototype.getGeometryFunction=function(){return this.geometryFunction_},Sa.prototype.getFill=function(){return this.fill_},Sa.prototype.setFill=function(e){this.fill_=e},Sa.prototype.getImage=function(){return this.image_},Sa.prototype.setImage=function(e){this.image_=e},Sa.prototype.getStroke=function(){return this.stroke_},Sa.prototype.setStroke=function(e){this.stroke_=e},Sa.prototype.getText=function(){return this.text_},Sa.prototype.setText=function(e){this.text_=e},Sa.prototype.getZIndex=function(){return this.zIndex_},Sa.prototype.setGeometry=function(e){"function"==typeof e?this.geometryFunction_=e:"string"==typeof e?this.geometryFunction_=function(t){return t.get(e)}:e?void 0!==e&&(this.geometryFunction_=function(){return e}):this.geometryFunction_=Ca,this.geometry_=e},Sa.prototype.setZIndex=function(e){this.zIndex_=e};var ya=null;function va(e,t){if(!ya){var i=new fa({color:"rgba(255,255,255,0.4)"}),n=new ga({color:"#3399CC",width:1.25});ya=[new Sa({image:new ma({fill:i,stroke:n,radius:5}),fill:i,stroke:n})]}return ya}function _a(){var e={},t=[255,255,255,1],i=[0,153,255,1];return e[_i.POLYGON]=[new Sa({fill:new fa({color:[255,255,255,.5]})})],e[_i.MULTI_POLYGON]=e[_i.POLYGON],e[_i.LINE_STRING]=[new Sa({stroke:new ga({color:t,width:5})}),new Sa({stroke:new ga({color:i,width:3})})],e[_i.MULTI_LINE_STRING]=e[_i.LINE_STRING],e[_i.CIRCLE]=e[_i.POLYGON].concat(e[_i.LINE_STRING]),e[_i.POINT]=[new Sa({image:new ma({radius:6,fill:new fa({color:i}),stroke:new ga({color:t,width:1.5})}),zIndex:1/0})],e[_i.MULTI_POINT]=e[_i.POINT],e[_i.GEOMETRY_COLLECTION]=e[_i.POLYGON].concat(e[_i.LINE_STRING],e[_i.POINT]),e}function Ca(e){return e.getGeometry()}var Ta="renderOrder",Da=function(e){function t(t){var i=t||{},n=l({},i);delete n.style,delete n.renderBuffer,delete n.updateWhileAnimating,delete n.updateWhileInteracting,e.call(this,n),this.declutter_=void 0!==i.declutter&&i.declutter,this.renderBuffer_=void 0!==i.renderBuffer?i.renderBuffer:100,this.style_=null,this.styleFunction_=void 0,this.setStyle(i.style),this.updateWhileAnimating_=void 0!==i.updateWhileAnimating&&i.updateWhileAnimating,this.updateWhileInteracting_=void 0!==i.updateWhileInteracting&&i.updateWhileInteracting,this.renderMode_=i.renderMode||Vo.VECTOR,this.type=Bo.VECTOR}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getDeclutter=function(){return this.declutter_},t.prototype.setDeclutter=function(e){this.declutter_=e},t.prototype.getRenderBuffer=function(){return this.renderBuffer_},t.prototype.getRenderOrder=function(){return this.get(Ta)},t.prototype.getStyle=function(){return this.style_},t.prototype.getStyleFunction=function(){return this.styleFunction_},t.prototype.getUpdateWhileAnimating=function(){return this.updateWhileAnimating_},t.prototype.getUpdateWhileInteracting=function(){return this.updateWhileInteracting_},t.prototype.setRenderOrder=function(e){this.set(Ta,e)},t.prototype.setStyle=function(e){this.style_=void 0!==e?e:va,this.styleFunction_=null===e?void 0:function(e){var t,i;"function"==typeof e?t=e:(Array.isArray(e)?i=e:(st("function"==typeof e.getZIndex,41),i=[e]),t=function(){return i});return t}(this.style_),this.changed()},t.prototype.getRenderMode=function(){return this.renderMode_},t}(Ar);Da.prototype.getSource;var Aa={ARRAY_BUFFER:"arraybuffer",JSON:"json",TEXT:"text",XML:"xml"};function Ia(e,t){return function(e,t,i,n){return function(r,o,a){var s=new XMLHttpRequest;s.open("GET","function"==typeof e?e(r,o,a):e,!0),t.getType()==Aa.ARRAY_BUFFER&&(s.responseType="arraybuffer"),s.onload=function(e){if(!s.status||s.status>=200&&s.status<300){var r,o=t.getType();o==Aa.JSON||o==Aa.TEXT?r=s.responseText:o==Aa.XML?(r=s.responseXML)||(r=(new DOMParser).parseFromString(s.responseText,"application/xml")):o==Aa.ARRAY_BUFFER&&(r=s.response),r?i.call(this,t.readFeatures(r,{featureProjection:a}),t.readProjection(r),t.getLastExtent()):n.call(this)}else n.call(this)}.bind(this),s.onerror=function(){n.call(this)}.bind(this),s.send()}}(e,t,(function(e,t){"function"==typeof this.addFeatures&&this.addFeatures(e)}),I)}function Pa(e,t){return[[-1/0,-1/0,1/0,1/0]]}var Ra=function(e){function t(t){e.call(this),this.projection_=Zi(t.projection),this.attributions_=xa(t.attributions),this.attributionsCollapsible_=void 0===t.attributionsCollapsible||t.attributionsCollapsible,this.loading=!1,this.state_=void 0!==t.state?t.state:hr.READY,this.wrapX_=void 0!==t.wrapX&&t.wrapX}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getAttributions=function(){return this.attributions_},t.prototype.getAttributionsCollapsible=function(){return this.attributionsCollapsible_},t.prototype.getProjection=function(){return this.projection_},t.prototype.getResolutions=function(){return i()},t.prototype.getState=function(){return this.state_},t.prototype.getWrapX=function(){return this.wrapX_},t.prototype.refresh=function(){this.changed()},t.prototype.setAttributions=function(e){this.attributions_=xa(e),this.changed()},t.prototype.setState=function(e){this.state_=e,this.changed()},t}(q);function xa(e){return e?Array.isArray(e)?function(t){return e}:"function"==typeof e?e:function(t){return[e]}:null}var Ea={ADDFEATURE:"addfeature",CHANGEFEATURE:"changefeature",CLEAR:"clear",REMOVEFEATURE:"removefeature"};function ba(e,t){return e(t={exports:{}},t.exports),t.exports}"undefined"!=typeof window?window:void 0!==e||"undefined"!=typeof self&&self;var Oa=ba((function(e,t){e.exports=function(){function e(e,t,i){var n=e[t];e[t]=e[i],e[i]=n}function t(e,t){return e<t?-1:e>t?1:0}return function(i,n,r,o,a){!function t(i,n,r,o,a){for(;o>r;){if(o-r>600){var s=o-r+1,c=n-r+1,l=Math.log(s),u=.5*Math.exp(2*l/3),h=.5*Math.sqrt(l*u*(s-u)/s)*(c-s/2<0?-1:1),d=Math.max(r,Math.floor(n-c*u/s+h)),p=Math.min(o,Math.floor(n+(s-c)*u/s+h));t(i,n,d,p,a)}var m=i[n],f=r,g=o;for(e(i,r,n),a(i[o],m)>0&&e(i,r,o);f<g;){for(e(i,f,g),f++,g--;a(i[f],m)<0;)f++;for(;a(i[g],m)>0;)g--}0===a(i[r],m)?e(i,r,g):e(i,++g,o),g<=n&&(r=g+1),n<=g&&(o=g-1)}}(i,n,r||0,o||i.length-1,a||t)}}()})),qa=Object.freeze({default:Oa,__moduleExports:Oa}),Fa=qa&&Oa||qa,Ma=wa,La=wa;function wa(e,t){if(!(this instanceof wa))return new wa(e,t);this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&this._initFormat(t),this.clear()}function Na(e,t,i){if(!i)return t.indexOf(e);for(var n=0;n<t.length;n++)if(i(e,t[n]))return n;return-1}function Ba(e,t){Va(e,0,e.children.length,t,e)}function Va(e,t,i,n,r){r||(r=Xa(null)),r.minX=1/0,r.minY=1/0,r.maxX=-1/0,r.maxY=-1/0;for(var o,a=t;a<i;a++)o=e.children[a],ka(r,e.leaf?n(o):o);return r}function ka(e,t){return e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY),e}function Ga(e,t){return e.minX-t.minX}function Ua(e,t){return e.minY-t.minY}function Wa(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function za(e){return e.maxX-e.minX+(e.maxY-e.minY)}function Ha(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function ja(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function Xa(e){return{children:e,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function Ya(e,t,i,n,r){for(var o,a=[t,i];a.length;)(i=a.pop())-(t=a.pop())<=n||(o=t+Math.ceil((i-t)/n/2)*n,Fa(e,o,t,i,r),a.push(t,o,o,i))}wa.prototype={all:function(){return this._all(this.data,[])},search:function(e){var t=this.data,i=[],n=this.toBBox;if(!ja(e,t))return i;for(var r,o,a,s,c=[];t;){for(r=0,o=t.children.length;r<o;r++)a=t.children[r],ja(e,s=t.leaf?n(a):a)&&(t.leaf?i.push(a):Ha(e,s)?this._all(a,i):c.push(a));t=c.pop()}return i},collides:function(e){var t=this.data,i=this.toBBox;if(!ja(e,t))return!1;for(var n,r,o,a,s=[];t;){for(n=0,r=t.children.length;n<r;n++)if(o=t.children[n],ja(e,a=t.leaf?i(o):o)){if(t.leaf||Ha(e,a))return!0;s.push(o)}t=s.pop()}return!1},load:function(e){if(!e||!e.length)return this;if(e.length<this._minEntries){for(var t=0,i=e.length;t<i;t++)this.insert(e[t]);return this}var n=this._build(e.slice(),0,e.length-1,0);if(this.data.children.length)if(this.data.height===n.height)this._splitRoot(this.data,n);else{if(this.data.height<n.height){var r=this.data;this.data=n,n=r}this._insert(n,this.data.height-n.height-1,!0)}else this.data=n;return this},insert:function(e){return e&&this._insert(e,this.data.height-1),this},clear:function(){return this.data=Xa([]),this},remove:function(e,t){if(!e)return this;for(var i,n,r,o,a=this.data,s=this.toBBox(e),c=[],l=[];a||c.length;){if(a||(a=c.pop(),n=c[c.length-1],i=l.pop(),o=!0),a.leaf&&-1!==(r=Na(e,a.children,t)))return a.children.splice(r,1),c.push(a),this._condense(c),this;o||a.leaf||!Ha(a,s)?n?(i++,a=n.children[i],o=!1):a=null:(c.push(a),l.push(i),i=0,n=a,a=a.children[0])}return this},toBBox:function(e){return e},compareMinX:Ga,compareMinY:Ua,toJSON:function(){return this.data},fromJSON:function(e){return this.data=e,this},_all:function(e,t){for(var i=[];e;)e.leaf?t.push.apply(t,e.children):i.push.apply(i,e.children),e=i.pop();return t},_build:function(e,t,i,n){var r,o=i-t+1,a=this._maxEntries;if(o<=a)return Ba(r=Xa(e.slice(t,i+1)),this.toBBox),r;n||(n=Math.ceil(Math.log(o)/Math.log(a)),a=Math.ceil(o/Math.pow(a,n-1))),(r=Xa([])).leaf=!1,r.height=n;var s,c,l,u,h=Math.ceil(o/a),d=h*Math.ceil(Math.sqrt(a));for(Ya(e,t,i,d,this.compareMinX),s=t;s<=i;s+=d)for(Ya(e,s,l=Math.min(s+d-1,i),h,this.compareMinY),c=s;c<=l;c+=h)u=Math.min(c+h-1,l),r.children.push(this._build(e,c,u,n-1));return Ba(r,this.toBBox),r},_chooseSubtree:function(e,t,i,n){for(var r,o,a,s,c,l,u,h,d,p;n.push(t),!t.leaf&&n.length-1!==i;){for(u=h=1/0,r=0,o=t.children.length;r<o;r++)c=Wa(a=t.children[r]),d=e,p=a,(l=(Math.max(p.maxX,d.maxX)-Math.min(p.minX,d.minX))*(Math.max(p.maxY,d.maxY)-Math.min(p.minY,d.minY))-c)<h?(h=l,u=c<u?c:u,s=a):l===h&&c<u&&(u=c,s=a);t=s||t.children[0]}return t},_insert:function(e,t,i){var n=this.toBBox,r=i?e:n(e),o=[],a=this._chooseSubtree(r,this.data,t,o);for(a.children.push(e),ka(a,r);t>=0&&o[t].children.length>this._maxEntries;)this._split(o,t),t--;this._adjustParentBBoxes(r,o,t)},_split:function(e,t){var i=e[t],n=i.children.length,r=this._minEntries;this._chooseSplitAxis(i,r,n);var o=this._chooseSplitIndex(i,r,n),a=Xa(i.children.splice(o,i.children.length-o));a.height=i.height,a.leaf=i.leaf,Ba(i,this.toBBox),Ba(a,this.toBBox),t?e[t-1].children.push(a):this._splitRoot(i,a)},_splitRoot:function(e,t){this.data=Xa([e,t]),this.data.height=e.height+1,this.data.leaf=!1,Ba(this.data,this.toBBox)},_chooseSplitIndex:function(e,t,i){var n,r,o,a,s,c,l,u,h,d,p,m,f,g;for(c=l=1/0,n=t;n<=i-t;n++)r=Va(e,0,n,this.toBBox),o=Va(e,n,i,this.toBBox),h=r,d=o,p=void 0,m=void 0,f=void 0,g=void 0,p=Math.max(h.minX,d.minX),m=Math.max(h.minY,d.minY),f=Math.min(h.maxX,d.maxX),g=Math.min(h.maxY,d.maxY),a=Math.max(0,f-p)*Math.max(0,g-m),s=Wa(r)+Wa(o),a<c?(c=a,u=n,l=s<l?s:l):a===c&&s<l&&(l=s,u=n);return u},_chooseSplitAxis:function(e,t,i){var n=e.leaf?this.compareMinX:Ga,r=e.leaf?this.compareMinY:Ua;this._allDistMargin(e,t,i,n)<this._allDistMargin(e,t,i,r)&&e.children.sort(n)},_allDistMargin:function(e,t,i,n){e.children.sort(n);var r,o,a=this.toBBox,s=Va(e,0,t,a),c=Va(e,i-t,i,a),l=za(s)+za(c);for(r=t;r<i-t;r++)o=e.children[r],ka(s,e.leaf?a(o):o),l+=za(s);for(r=i-t-1;r>=t;r--)o=e.children[r],ka(c,e.leaf?a(o):o),l+=za(c);return l},_adjustParentBBoxes:function(e,t,i){for(var n=i;n>=0;n--)ka(t[n],e)},_condense:function(e){for(var t,i=e.length-1;i>=0;i--)0===e[i].children.length?i>0?(t=e[i-1].children).splice(t.indexOf(e[i]),1):this.clear():Ba(e[i],this.toBBox)},_initFormat:function(e){var t=["return a"," - b",";"];this.compareMinX=new Function("a","b",t.join(e[0])),this.compareMinY=new Function("a","b",t.join(e[1])),this.toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}},Ma.default=La;var Ka=function(e){this.rbush_=Ma(e,void 0),this.items_={}};Ka.prototype.insert=function(e,t){var i={minX:e[0],minY:e[1],maxX:e[2],maxY:e[3],value:t};this.rbush_.insert(i),this.items_[r(t)]=i},Ka.prototype.load=function(e,t){for(var i=new Array(t.length),n=0,o=t.length;n<o;n++){var a=e[n],s=t[n],c={minX:a[0],minY:a[1],maxX:a[2],maxY:a[3],value:s};i[n]=c,this.items_[r(s)]=c}this.rbush_.load(i)},Ka.prototype.remove=function(e){var t=r(e),i=this.items_[t];return delete this.items_[t],null!==this.rbush_.remove(i)},Ka.prototype.update=function(e,t){var i=this.items_[r(t)];ei([i.minX,i.minY,i.maxX,i.maxY],e)||(this.remove(t),this.insert(e,t))},Ka.prototype.getAll=function(){return this.rbush_.all().map((function(e){return e.value}))},Ka.prototype.getInExtent=function(e){var t={minX:e[0],minY:e[1],maxX:e[2],maxY:e[3]};return this.rbush_.search(t).map((function(e){return e.value}))},Ka.prototype.forEach=function(e,t){return this.forEach_(this.getAll(),e,t)},Ka.prototype.forEachInExtent=function(e,t,i){return this.forEach_(this.getInExtent(e),t,i)},Ka.prototype.forEach_=function(e,t,i){for(var n,r=0,o=e.length;r<o;r++)if(n=t.call(i,e[r]))return n;return n},Ka.prototype.isEmpty=function(){return d(this.items_)},Ka.prototype.clear=function(){this.rbush_.clear(),this.items_={}},Ka.prototype.getExtent=function(e){var t=this.rbush_.toJSON();return Kt(t.minX,t.minY,t.maxX,t.maxY,e)},Ka.prototype.concat=function(e){for(var t in this.rbush_.load(e.rbush_.all()),e.items_)this.items_[t]=e.items_[t]};var Za=function(e){function t(t,i){e.call(this,t),this.feature=i}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),Qa=function(e){function t(t){var i=t||{};e.call(this,{attributions:i.attributions,projection:void 0,state:hr.READY,wrapX:void 0===i.wrapX||i.wrapX}),this.loader_=I,this.format_=i.format,this.overlaps_=null==i.overlaps||i.overlaps,this.url_=i.url,void 0!==i.loader?this.loader_=i.loader:void 0!==this.url_&&(st(this.format_,7),this.loader_=Ia(this.url_,this.format_)),this.strategy_=void 0!==i.strategy?i.strategy:Pa;var n,r,o=void 0===i.useSpatialIndex||i.useSpatialIndex;this.featuresRtree_=o?new Ka:null,this.loadedExtentsRtree_=new Ka,this.nullGeometryFeatures_={},this.idIndex_={},this.undefIdIndex_={},this.featureChangeKeys_={},this.featuresCollection_=null,Array.isArray(i.features)?r=i.features:i.features&&(r=(n=i.features).getArray()),o||void 0!==n||(n=new V(r)),void 0!==r&&this.addFeaturesInternal(r),void 0!==n&&this.bindFeaturesCollection_(n)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){this.addFeatureInternal(e),this.changed()},t.prototype.addFeatureInternal=function(e){var t=r(e);if(this.addToIndex_(t,e)){this.setupChangeEvents_(t,e);var i=e.getGeometry();if(i){var n=i.getExtent();this.featuresRtree_&&this.featuresRtree_.insert(n,e)}else this.nullGeometryFeatures_[t]=e;this.dispatchEvent(new Za(Ea.ADDFEATURE,e))}},t.prototype.setupChangeEvents_=function(e,t){this.featureChangeKeys_[e]=[S(t,E.CHANGE,this.handleFeatureChange_,this),S(t,c,this.handleFeatureChange_,this)]},t.prototype.addToIndex_=function(e,t){var i=!0,n=t.getId();return void 0!==n?n.toString()in this.idIndex_?i=!1:this.idIndex_[n.toString()]=t:(st(!(e in this.undefIdIndex_),30),this.undefIdIndex_[e]=t),i},t.prototype.addFeatures=function(e){this.addFeaturesInternal(e),this.changed()},t.prototype.addFeaturesInternal=function(e){for(var t=[],i=[],n=[],o=0,a=e.length;o<a;o++){var s=e[o],c=r(s);this.addToIndex_(c,s)&&i.push(s)}for(var l=0,u=i.length;l<u;l++){var h=i[l],d=r(h);this.setupChangeEvents_(d,h);var p=h.getGeometry();if(p){var m=p.getExtent();t.push(m),n.push(h)}else this.nullGeometryFeatures_[d]=h}this.featuresRtree_&&this.featuresRtree_.load(t,n);for(var f=0,g=i.length;f<g;f++)this.dispatchEvent(new Za(Ea.ADDFEATURE,i[f]))},t.prototype.bindFeaturesCollection_=function(e){var t=!1;S(this,Ea.ADDFEATURE,(function(i){t||(t=!0,e.push(i.feature),t=!1)})),S(this,Ea.REMOVEFEATURE,(function(i){t||(t=!0,e.remove(i.feature),t=!1)})),S(e,s.ADD,(function(e){t||(t=!0,this.addFeature(e.element),t=!1)}),this),S(e,s.REMOVE,(function(e){t||(t=!0,this.removeFeature(e.element),t=!1)}),this),this.featuresCollection_=e},t.prototype.clear=function(e){if(e){for(var t in this.featureChangeKeys_)this.featureChangeKeys_[t].forEach(_);this.featuresCollection_||(this.featureChangeKeys_={},this.idIndex_={},this.undefIdIndex_={})}else if(this.featuresRtree_)for(var i in this.featuresRtree_.forEach(this.removeFeatureInternal,this),this.nullGeometryFeatures_)this.removeFeatureInternal(this.nullGeometryFeatures_[i]);this.featuresCollection_&&this.featuresCollection_.clear(),this.featuresRtree_&&this.featuresRtree_.clear(),this.loadedExtentsRtree_.clear(),this.nullGeometryFeatures_={};var n=new Za(Ea.CLEAR);this.dispatchEvent(n),this.changed()},t.prototype.forEachFeature=function(e){if(this.featuresRtree_)return this.featuresRtree_.forEach(e);this.featuresCollection_&&this.featuresCollection_.forEach(e)},t.prototype.forEachFeatureAtCoordinateDirect=function(e,t){var i=[e[0],e[1],e[0],e[1]];return this.forEachFeatureInExtent(i,(function(i){return i.getGeometry().intersectsCoordinate(e)?t(i):void 0}))},t.prototype.forEachFeatureInExtent=function(e,t){if(this.featuresRtree_)return this.featuresRtree_.forEachInExtent(e,t);this.featuresCollection_&&this.featuresCollection_.forEach(t)},t.prototype.forEachFeatureIntersectingExtent=function(e,t){return this.forEachFeatureInExtent(e,(function(i){if(i.getGeometry().intersectsExtent(e)){var n=t(i);if(n)return n}}))},t.prototype.getFeaturesCollection=function(){return this.featuresCollection_},t.prototype.getFeatures=function(){var e;return this.featuresCollection_?e=this.featuresCollection_.getArray():this.featuresRtree_&&(e=this.featuresRtree_.getAll(),d(this.nullGeometryFeatures_)||We(e,h(this.nullGeometryFeatures_))),e},t.prototype.getFeaturesAtCoordinate=function(e){var t=[];return this.forEachFeatureAtCoordinateDirect(e,(function(e){t.push(e)})),t},t.prototype.getFeaturesInExtent=function(e){return this.featuresRtree_.getInExtent(e)},t.prototype.getClosestFeatureToCoordinate=function(e,t){var i=e[0],n=e[1],r=null,o=[NaN,NaN],a=1/0,s=[-1/0,-1/0,1/0,1/0],c=t||D;return this.featuresRtree_.forEachInExtent(s,(function(e){if(c(e)){var t=e.getGeometry(),l=a;if((a=t.closestPointXY(i,n,o,a))<l){r=e;var u=Math.sqrt(a);s[0]=i-u,s[1]=n-u,s[2]=i+u,s[3]=n+u}}})),r},t.prototype.getExtent=function(e){return this.featuresRtree_.getExtent(e)},t.prototype.getFeatureById=function(e){var t=this.idIndex_[e.toString()];return void 0!==t?t:null},t.prototype.getFormat=function(){return this.format_},t.prototype.getOverlaps=function(){return this.overlaps_},t.prototype.getUrl=function(){return this.url_},t.prototype.handleFeatureChange_=function(e){var t=e.target,i=r(t),n=t.getGeometry();if(n){var o=n.getExtent();i in this.nullGeometryFeatures_?(delete this.nullGeometryFeatures_[i],this.featuresRtree_&&this.featuresRtree_.insert(o,t)):this.featuresRtree_&&this.featuresRtree_.update(o,t)}else i in this.nullGeometryFeatures_||(this.featuresRtree_&&this.featuresRtree_.remove(t),this.nullGeometryFeatures_[i]=t);var a=t.getId();if(void 0!==a){var s=a.toString();i in this.undefIdIndex_?(delete this.undefIdIndex_[i],this.idIndex_[s]=t):this.idIndex_[s]!==t&&(this.removeFromIdIndex_(t),this.idIndex_[s]=t)}else i in this.undefIdIndex_||(this.removeFromIdIndex_(t),this.undefIdIndex_[i]=t);this.changed(),this.dispatchEvent(new Za(Ea.CHANGEFEATURE,t))},t.prototype.hasFeature=function(e){var t=e.getId();return void 0!==t?t in this.idIndex_:r(e)in this.undefIdIndex_},t.prototype.isEmpty=function(){return this.featuresRtree_.isEmpty()&&d(this.nullGeometryFeatures_)},t.prototype.loadFeatures=function(e,t,i){var n=this,r=this.loadedExtentsRtree_,o=this.strategy_(e,t);this.loading=!1;for(var a=function(e,a){var s=o[e];r.forEachInExtent(s,(function(e){return jt(e.extent,s)}))||(n.loader_.call(n,s,t,i),r.insert(s,{extent:s.slice()}),n.loading=n.loader_!==I)},s=0,c=o.length;s<c;++s)a(s)},t.prototype.removeLoadedExtent=function(e){var t,i=this.loadedExtentsRtree_;i.forEachInExtent(e,(function(i){if(ei(i.extent,e))return t=i,!0})),t&&i.remove(t)},t.prototype.removeFeature=function(e){var t=r(e);t in this.nullGeometryFeatures_?delete this.nullGeometryFeatures_[t]:this.featuresRtree_&&this.featuresRtree_.remove(e),this.removeFeatureInternal(e),this.changed()},t.prototype.removeFeatureInternal=function(e){var t=r(e);this.featureChangeKeys_[t].forEach(_),delete this.featureChangeKeys_[t];var i=e.getId();void 0!==i?delete this.idIndex_[i.toString()]:delete this.undefIdIndex_[t],this.dispatchEvent(new Za(Ea.REMOVEFEATURE,e))},t.prototype.removeFromIdIndex_=function(e){var t=!1;for(var i in this.idIndex_)if(this.idIndex_[i]===e){delete this.idIndex_[i],t=!0;break}return t},t.prototype.setLoader=function(e){this.loader_=e},t}(Ra),Ja={POINT:"Point",LINE_STRING:"LineString",POLYGON:"Polygon",CIRCLE:"Circle"},$a="drawstart",es="drawend",ts=function(e){function t(t,i){e.call(this,t),this.feature=i}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),is=function(e){function t(t){var i=t;i.stopDown||(i.stopDown=A),e.call(this,i),this.shouldHandle_=!1,this.downPx_=null,this.downTimeout_,this.lastDragTime_,this.freehand_=!1,this.source_=t.source?t.source:null,this.features_=t.features?t.features:null,this.snapTolerance_=t.snapTolerance?t.snapTolerance:12,this.type_=t.type,this.mode_=function(e){var t;return e===_i.POINT||e===_i.MULTI_POINT?t=Ja.POINT:e===_i.LINE_STRING||e===_i.MULTI_LINE_STRING?t=Ja.LINE_STRING:e===_i.POLYGON||e===_i.MULTI_POLYGON?t=Ja.POLYGON:e===_i.CIRCLE&&(t=Ja.CIRCLE),t}(this.type_),this.stopClick_=!!t.stopClick,this.minPoints_=t.minPoints?t.minPoints:this.mode_===Ja.POLYGON?3:2,this.maxPoints_=t.maxPoints?t.maxPoints:1/0,this.finishCondition_=t.finishCondition?t.finishCondition:D;var n,r=t.geometryFunction;if(!r)if(this.type_===_i.CIRCLE)r=function(e,t){var i=t||new bo([NaN,NaN]),n=qt(e[0],e[1]);return i.setCenterAndRadius(e[0],Math.sqrt(n)),i};else{var o,a=this.mode_;a===Ja.POINT?o=wn:a===Ja.LINE_STRING?o=Mo:a===Ja.POLYGON&&(o=Kn),r=function(e,t){var i=t;return i?a===Ja.POLYGON?e[0].length?i.setCoordinates([e[0].concat([e[0][0]])]):i.setCoordinates([]):i.setCoordinates(e):i=new o(e),i}}this.geometryFunction_=r,this.dragVertexDelay_=void 0!==t.dragVertexDelay?t.dragVertexDelay:500,this.finishCoordinate_=null,this.sketchFeature_=null,this.sketchPoint_=null,this.sketchCoords_=null,this.sketchLine_=null,this.sketchLineCoords_=null,this.squaredClickTolerance_=t.clickTolerance?t.clickTolerance*t.clickTolerance:36,this.overlay_=new Da({source:new Qa({useSpatialIndex:!1,wrapX:!!t.wrapX&&t.wrapX}),style:t.style?t.style:(n=_a(),function(e,t){return n[e.getGeometry().getType()]}),updateWhileInteracting:!0}),this.geometryName_=t.geometryName,this.condition_=t.condition?t.condition:io,this.freehandCondition_,t.freehand?this.freehandCondition_=Qr:this.freehandCondition_=t.freehandCondition?t.freehandCondition:no,S(this,M(Vr.ACTIVE),this.updateState_,this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setMap=function(t){e.prototype.setMap.call(this,t),this.updateState_()},t.prototype.getOverlay=function(){return this.overlay_},t.prototype.handleEvent=function(t){t.originalEvent.type===E.CONTEXTMENU&&t.preventDefault(),this.freehand_=this.mode_!==Ja.POINT&&this.freehandCondition_(t);var i=t.type===oe.POINTERMOVE,n=!0;return!this.freehand_&&this.lastDragTime_&&t.type===oe.POINTERDRAG&&(Date.now()-this.lastDragTime_>=this.dragVertexDelay_?(this.downPx_=t.pixel,this.shouldHandle_=!this.freehand_,i=!0):this.lastDragTime_=void 0,this.shouldHandle_&&void 0!==this.downTimeout_&&(clearTimeout(this.downTimeout_),this.downTimeout_=void 0)),this.freehand_&&t.type===oe.POINTERDRAG&&null!==this.sketchFeature_?(this.addToDrawing_(t),n=!1):this.freehand_&&t.type===oe.POINTERDOWN?n=!1:i?(n=t.type===oe.POINTERMOVE)&&this.freehand_?n=this.handlePointerMove_(t):(t.pointerEvent.pointerType==ue||t.type===oe.POINTERDRAG&&void 0===this.downTimeout_)&&this.handlePointerMove_(t):t.type===oe.DBLCLICK&&(n=!1),e.prototype.handleEvent.call(this,t)&&n},t.prototype.handleDownEvent=function(e){return this.shouldHandle_=!this.freehand_,this.freehand_?(this.downPx_=e.pixel,this.finishCoordinate_||this.startDrawing_(e),!0):!!this.condition_(e)&&(this.lastDragTime_=Date.now(),this.downTimeout_=setTimeout(function(){this.handlePointerMove_(new ae(oe.POINTERMOVE,e.map,e.pointerEvent,!1,e.frameState))}.bind(this),this.dragVertexDelay_),this.downPx_=e.pixel,!0)},t.prototype.handleUpEvent=function(e){var t=!0;this.downTimeout_&&(clearTimeout(this.downTimeout_),this.downTimeout_=void 0),this.handlePointerMove_(e);var i=this.mode_===Ja.CIRCLE;return this.shouldHandle_?(this.finishCoordinate_?this.freehand_||i?this.finishDrawing():this.atFinish_(e)?this.finishCondition_(e)&&this.finishDrawing():this.addToDrawing_(e):(this.startDrawing_(e),this.mode_===Ja.POINT&&this.finishDrawing()),t=!1):this.freehand_&&(this.finishCoordinate_=null,this.abortDrawing_()),!t&&this.stopClick_&&e.stopPropagation(),t},t.prototype.handlePointerMove_=function(e){if(this.downPx_&&(!this.freehand_&&this.shouldHandle_||this.freehand_&&!this.shouldHandle_)){var t=this.downPx_,i=e.pixel,n=t[0]-i[0],r=t[1]-i[1],o=n*n+r*r;if(this.shouldHandle_=this.freehand_?o>this.squaredClickTolerance_:o<=this.squaredClickTolerance_,!this.shouldHandle_)return!0}return this.finishCoordinate_?this.modifyDrawing_(e):this.createOrUpdateSketchPoint_(e),!0},t.prototype.atFinish_=function(e){var t=!1;if(this.sketchFeature_){var i=!1,n=[this.finishCoordinate_];if(this.mode_===Ja.LINE_STRING)i=this.sketchCoords_.length>this.minPoints_;else if(this.mode_===Ja.POLYGON){var r=this.sketchCoords_;i=r[0].length>this.minPoints_,n=[r[0][0],r[0][r[0].length-2]]}if(i)for(var o=e.map,a=0,s=n.length;a<s;a++){var c=n[a],l=o.getPixelFromCoordinate(c),u=e.pixel,h=u[0]-l[0],d=u[1]-l[1],p=this.freehand_?1:this.snapTolerance_;if(t=Math.sqrt(h*h+d*d)<=p){this.finishCoordinate_=c;break}}}return t},t.prototype.createOrUpdateSketchPoint_=function(e){var t=e.coordinate.slice();this.sketchPoint_?this.sketchPoint_.getGeometry().setCoordinates(t):(this.sketchPoint_=new Eo(new wn(t)),this.updateSketchFeatures_())},t.prototype.startDrawing_=function(e){var t=e.coordinate;this.finishCoordinate_=t,this.mode_===Ja.POINT?this.sketchCoords_=t.slice():this.mode_===Ja.POLYGON?(this.sketchCoords_=[[t.slice(),t.slice()]],this.sketchLineCoords_=this.sketchCoords_[0]):this.sketchCoords_=[t.slice(),t.slice()],this.sketchLineCoords_&&(this.sketchLine_=new Eo(new Mo(this.sketchLineCoords_)));var i=this.geometryFunction_(this.sketchCoords_);this.sketchFeature_=new Eo,this.geometryName_&&this.sketchFeature_.setGeometryName(this.geometryName_),this.sketchFeature_.setGeometry(i),this.updateSketchFeatures_(),this.dispatchEvent(new ts($a,this.sketchFeature_))},t.prototype.modifyDrawing_=function(e){var t,i,n,r=e.coordinate,o=this.sketchFeature_.getGeometry();if(this.mode_===Ja.POINT?i=this.sketchCoords_:this.mode_===Ja.POLYGON?(i=(t=this.sketchCoords_[0])[t.length-1],this.atFinish_(e)&&(r=this.finishCoordinate_.slice())):i=(t=this.sketchCoords_)[t.length-1],i[0]=r[0],i[1]=r[1],this.geometryFunction_(this.sketchCoords_,o),this.sketchPoint_&&this.sketchPoint_.getGeometry().setCoordinates(r),o.getType()==_i.POLYGON&&this.mode_!==Ja.POLYGON){this.sketchLine_||(this.sketchLine_=new Eo);var a=o.getLinearRing(0);(n=this.sketchLine_.getGeometry())?(n.setFlatCoordinates(a.getLayout(),a.getFlatCoordinates()),n.changed()):(n=new Mo(a.getFlatCoordinates(),a.getLayout()),this.sketchLine_.setGeometry(n))}else this.sketchLineCoords_&&(n=this.sketchLine_.getGeometry()).setCoordinates(this.sketchLineCoords_);this.updateSketchFeatures_()},t.prototype.addToDrawing_=function(e){var t,i,n=e.coordinate,r=this.sketchFeature_.getGeometry();this.mode_===Ja.LINE_STRING?(this.finishCoordinate_=n.slice(),(i=this.sketchCoords_).length>=this.maxPoints_&&(this.freehand_?i.pop():t=!0),i.push(n.slice()),this.geometryFunction_(i,r)):this.mode_===Ja.POLYGON&&((i=this.sketchCoords_[0]).length>=this.maxPoints_&&(this.freehand_?i.pop():t=!0),i.push(n.slice()),t&&(this.finishCoordinate_=i[0]),this.geometryFunction_(this.sketchCoords_,r)),this.updateSketchFeatures_(),t&&this.finishDrawing()},t.prototype.removeLastPoint=function(){if(this.sketchFeature_){var e,t=this.sketchFeature_.getGeometry();this.mode_===Ja.LINE_STRING?((e=this.sketchCoords_).splice(-2,1),this.geometryFunction_(e,t),e.length>=2&&(this.finishCoordinate_=e[e.length-2].slice())):this.mode_===Ja.POLYGON&&((e=this.sketchCoords_[0]).splice(-2,1),this.sketchLine_.getGeometry().setCoordinates(e),this.geometryFunction_(this.sketchCoords_,t)),0===e.length&&(this.finishCoordinate_=null),this.updateSketchFeatures_()}},t.prototype.finishDrawing=function(){var e=this.abortDrawing_();if(e){var t=this.sketchCoords_,i=e.getGeometry();this.mode_===Ja.LINE_STRING?(t.pop(),this.geometryFunction_(t,i)):this.mode_===Ja.POLYGON&&(t[0].pop(),this.geometryFunction_(t,i),t=i.getCoordinates()),this.type_===_i.MULTI_POINT?e.setGeometry(new wo([t])):this.type_===_i.MULTI_LINE_STRING?e.setGeometry(new Lo([t])):this.type_===_i.MULTI_POLYGON&&e.setGeometry(new No([t])),this.dispatchEvent(new ts(es,e)),this.features_&&this.features_.push(e),this.source_&&this.source_.addFeature(e)}},t.prototype.abortDrawing_=function(){this.finishCoordinate_=null;var e=this.sketchFeature_;return e&&(this.sketchFeature_=null,this.sketchPoint_=null,this.sketchLine_=null,this.overlay_.getSource().clear(!0)),e},t.prototype.extend=function(e){var t=e.getGeometry();this.sketchFeature_=e,this.sketchCoords_=t.getCoordinates();var i=this.sketchCoords_[this.sketchCoords_.length-1];this.finishCoordinate_=i.slice(),this.sketchCoords_.push(i.slice()),this.updateSketchFeatures_(),this.dispatchEvent(new ts($a,this.sketchFeature_))},t.prototype.updateSketchFeatures_=function(){var e=[];this.sketchFeature_&&e.push(this.sketchFeature_),this.sketchLine_&&e.push(this.sketchLine_),this.sketchPoint_&&e.push(this.sketchPoint_);var t=this.overlay_.getSource();t.clear(!0),t.addFeatures(e)},t.prototype.updateState_=function(){var e=this.getMap(),t=this.getActive();e&&t||this.abortDrawing_(),this.overlay_.setMap(t?e:null)},t}(so),ns=1,rs="modifystart",os="modifyend",as=function(e){function t(t,i,n){e.call(this,t),this.features=i,this.mapBrowserEvent=n}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),ss=function(e){function t(t){var i,n;if(e.call(this,t),this.condition_=t.condition?t.condition:ao,this.defaultDeleteCondition_=function(e){return Yr(e)&&to(e)},this.deleteCondition_=t.deleteCondition?t.deleteCondition:this.defaultDeleteCondition_,this.insertVertexCondition_=t.insertVertexCondition?t.insertVertexCondition:Qr,this.vertexFeature_=null,this.vertexSegments_=null,this.lastPixel_=[0,0],this.ignoreNextSingleClick_=!1,this.modified_=!1,this.rBush_=new Ka,this.pixelTolerance_=void 0!==t.pixelTolerance?t.pixelTolerance:10,this.snappedToVertex_=!1,this.changingFeature_=!1,this.dragSegments_=[],this.overlay_=new Da({source:new Qa({useSpatialIndex:!1,wrapX:!!t.wrapX}),style:t.style?t.style:(i=_a(),function(e,t){return i[_i.POINT]}),updateWhileAnimating:!0,updateWhileInteracting:!0}),this.SEGMENT_WRITERS_={Point:this.writePointGeometry_,LineString:this.writeLineStringGeometry_,LinearRing:this.writeLineStringGeometry_,Polygon:this.writePolygonGeometry_,MultiPoint:this.writeMultiPointGeometry_,MultiLineString:this.writeMultiLineStringGeometry_,MultiPolygon:this.writeMultiPolygonGeometry_,Circle:this.writeCircleGeometry_,GeometryCollection:this.writeGeometryCollectionGeometry_},this.source_=null,t.source?(this.source_=t.source,n=new V(this.source_.getFeatures()),S(this.source_,Ea.ADDFEATURE,this.handleSourceAdd_,this),S(this.source_,Ea.REMOVEFEATURE,this.handleSourceRemove_,this)):n=t.features,!n)throw new Error("The modify interaction requires features or a source");this.features_=n,this.features_.forEach(this.addFeature_.bind(this)),S(this.features_,s.ADD,this.handleFeatureAdd_,this),S(this.features_,s.REMOVE,this.handleFeatureRemove_,this),this.lastPointerEvent_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature_=function(e){var t=e.getGeometry();t&&t.getType()in this.SEGMENT_WRITERS_&&this.SEGMENT_WRITERS_[t.getType()].call(this,e,t);var i=this.getMap();i&&i.isRendered()&&this.getActive()&&this.handlePointerAtPixel_(this.lastPixel_,i),S(e,E.CHANGE,this.handleFeatureChange_,this)},t.prototype.willModifyFeatures_=function(e){this.modified_||(this.modified_=!0,this.dispatchEvent(new as(rs,this.features_,e)))},t.prototype.removeFeature_=function(e){this.removeFeatureSegmentData_(e),this.vertexFeature_&&0===this.features_.getLength()&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),v(e,E.CHANGE,this.handleFeatureChange_,this)},t.prototype.removeFeatureSegmentData_=function(e){var t=this.rBush_,i=[];t.forEach((function(t){e===t.feature&&i.push(t)}));for(var n=i.length-1;n>=0;--n)t.remove(i[n])},t.prototype.setActive=function(t){this.vertexFeature_&&!t&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),e.prototype.setActive.call(this,t)},t.prototype.setMap=function(t){this.overlay_.setMap(t),e.prototype.setMap.call(this,t)},t.prototype.getOverlay=function(){return this.overlay_},t.prototype.handleSourceAdd_=function(e){e.feature&&this.features_.push(e.feature)},t.prototype.handleSourceRemove_=function(e){e.feature&&this.features_.remove(e.feature)},t.prototype.handleFeatureAdd_=function(e){this.addFeature_(e.element)},t.prototype.handleFeatureChange_=function(e){if(!this.changingFeature_){var t=e.target;this.removeFeature_(t),this.addFeature_(t)}},t.prototype.handleFeatureRemove_=function(e){var t=e.element;this.removeFeature_(t)},t.prototype.writePointGeometry_=function(e,t){var i=t.getCoordinates(),n={feature:e,geometry:t,segment:[i,i]};this.rBush_.insert(t.getExtent(),n)},t.prototype.writeMultiPointGeometry_=function(e,t){for(var i=t.getCoordinates(),n=0,r=i.length;n<r;++n){var o=i[n],a={feature:e,geometry:t,depth:[n],index:n,segment:[o,o]};this.rBush_.insert(t.getExtent(),a)}},t.prototype.writeLineStringGeometry_=function(e,t){for(var i=t.getCoordinates(),n=0,r=i.length-1;n<r;++n){var o=i.slice(n,n+2),a={feature:e,geometry:t,index:n,segment:o};this.rBush_.insert(Gt(o),a)}},t.prototype.writeMultiLineStringGeometry_=function(e,t){for(var i=t.getCoordinates(),n=0,r=i.length;n<r;++n)for(var o=i[n],a=0,s=o.length-1;a<s;++a){var c=o.slice(a,a+2),l={feature:e,geometry:t,depth:[n],index:a,segment:c};this.rBush_.insert(Gt(c),l)}},t.prototype.writePolygonGeometry_=function(e,t){for(var i=t.getCoordinates(),n=0,r=i.length;n<r;++n)for(var o=i[n],a=0,s=o.length-1;a<s;++a){var c=o.slice(a,a+2),l={feature:e,geometry:t,depth:[n],index:a,segment:c};this.rBush_.insert(Gt(c),l)}},t.prototype.writeMultiPolygonGeometry_=function(e,t){for(var i=t.getCoordinates(),n=0,r=i.length;n<r;++n)for(var o=i[n],a=0,s=o.length;a<s;++a)for(var c=o[a],l=0,u=c.length-1;l<u;++l){var h=c.slice(l,l+2),d={feature:e,geometry:t,depth:[a,n],index:l,segment:h};this.rBush_.insert(Gt(h),d)}},t.prototype.writeCircleGeometry_=function(e,t){var i=t.getCenter(),n={feature:e,geometry:t,index:0,segment:[i,i]},r={feature:e,geometry:t,index:ns,segment:[i,i]},o=[n,r];n.featureSegments=r.featureSegments=o,this.rBush_.insert(Qt(i),n),this.rBush_.insert(t.getExtent(),r)},t.prototype.writeGeometryCollectionGeometry_=function(e,t){for(var i=t.getGeometriesArray(),n=0;n<i.length;++n)this.SEGMENT_WRITERS_[i[n].getType()].call(this,e,i[n])},t.prototype.createOrUpdateVertexFeature_=function(e){var t=this.vertexFeature_;return t?t.getGeometry().setCoordinates(e):(t=new Eo(new wn(e)),this.vertexFeature_=t,this.overlay_.getSource().addFeature(t)),t},t.prototype.handleEvent=function(t){return!t.pointerEvent||(this.lastPointerEvent_=t,t.map.getView().getInteracting()||t.type!=oe.POINTERMOVE||this.handlingDownUpSequence||this.handlePointerMove_(t),this.vertexFeature_&&this.deleteCondition_(t)&&(i=!(t.type!=oe.SINGLECLICK||!this.ignoreNextSingleClick_)||this.removePoint()),t.type==oe.SINGLECLICK&&(this.ignoreNextSingleClick_=!1),e.prototype.handleEvent.call(this,t)&&!i);var i},t.prototype.handleDragEvent=function(e){this.ignoreNextSingleClick_=!1,this.willModifyFeatures_(e);for(var t=e.coordinate,i=0,n=this.dragSegments_.length;i<n;++i){for(var r=this.dragSegments_[i],o=r[0],a=o.depth,s=o.geometry,c=void 0,l=o.segment,u=r[1];t.length<s.getStride();)t.push(l[u][t.length]);switch(s.getType()){case _i.POINT:c=t,l[0]=l[1]=t;break;case _i.MULTI_POINT:(c=s.getCoordinates())[o.index]=t,l[0]=l[1]=t;break;case _i.LINE_STRING:(c=s.getCoordinates())[o.index+u]=t,l[u]=t;break;case _i.MULTI_LINE_STRING:case _i.POLYGON:(c=s.getCoordinates())[a[0]][o.index+u]=t,l[u]=t;break;case _i.MULTI_POLYGON:(c=s.getCoordinates())[a[1]][a[0]][o.index+u]=t,l[u]=t;break;case _i.CIRCLE:l[0]=l[1]=t,0===o.index?(this.changingFeature_=!0,s.setCenter(t),this.changingFeature_=!1):(this.changingFeature_=!0,s.setRadius(Ft(s.getCenter(),t)),this.changingFeature_=!1)}c&&this.setGeometryCoordinates_(s,c)}this.createOrUpdateVertexFeature_(t)},t.prototype.handleDownEvent=function(e){if(!this.condition_(e))return!1;this.handlePointerAtPixel_(e.pixel,e.map);var t=e.map.getCoordinateFromPixel(e.pixel);this.dragSegments_.length=0,this.modified_=!1;var i=this.vertexFeature_;if(i){var n=[],o=i.getGeometry().getCoordinates(),a=Gt([o]),s=this.rBush_.getInExtent(a),c={};s.sort(cs);for(var l=0,u=s.length;l<u;++l){var h=s[l],d=h.segment,p=r(h.feature),m=h.depth;if(m&&(p+="-"+m.join("-")),c[p]||(c[p]=new Array(2)),h.geometry.getType()===_i.CIRCLE&&h.index===ns)Et(us(t,h),o)&&!c[p][0]&&(this.dragSegments_.push([h,0]),c[p][0]=h);else if(Et(d[0],o)&&!c[p][0])this.dragSegments_.push([h,0]),c[p][0]=h;else if(Et(d[1],o)&&!c[p][1]){if((h.geometry.getType()===_i.LINE_STRING||h.geometry.getType()===_i.MULTI_LINE_STRING)&&c[p][0]&&0===c[p][0].index)continue;this.dragSegments_.push([h,1]),c[p][1]=h}else this.insertVertexCondition_(e)&&r(d)in this.vertexSegments_&&!c[p][0]&&!c[p][1]&&n.push([h,o])}n.length&&this.willModifyFeatures_(e);for(var f=n.length-1;f>=0;--f)this.insertVertex_.apply(this,n[f])}return!!this.vertexFeature_},t.prototype.handleUpEvent=function(e){for(var t=this.dragSegments_.length-1;t>=0;--t){var i=this.dragSegments_[t][0],n=i.geometry;if(n.getType()===_i.CIRCLE){var r=n.getCenter(),o=i.featureSegments[0],a=i.featureSegments[1];o.segment[0]=o.segment[1]=r,a.segment[0]=a.segment[1]=r,this.rBush_.update(Qt(r),o),this.rBush_.update(n.getExtent(),a)}else this.rBush_.update(Gt(i.segment),i)}return this.modified_&&(this.dispatchEvent(new as(os,this.features_,e)),this.modified_=!1),!1},t.prototype.handlePointerMove_=function(e){this.lastPixel_=e.pixel,this.handlePointerAtPixel_(e.pixel,e.map)},t.prototype.handlePointerAtPixel_=function(e,t){var i=t.getCoordinateFromPixel(e),n=Ut(Qt(i),t.getView().getResolution()*this.pixelTolerance_),o=this.rBush_.getInExtent(n);if(o.length>0){o.sort((function(e,t){return ls(i,e)-ls(i,t)}));var a=o[0],s=a.segment,c=us(i,a),l=t.getPixelFromCoordinate(c),u=Ft(e,l);if(u<=this.pixelTolerance_){var h={};if(a.geometry.getType()===_i.CIRCLE&&a.index===ns)this.snappedToVertex_=!0,this.createOrUpdateVertexFeature_(c);else{var d=t.getPixelFromCoordinate(s[0]),p=t.getPixelFromCoordinate(s[1]),m=qt(l,d),f=qt(l,p);u=Math.sqrt(Math.min(m,f)),this.snappedToVertex_=u<=this.pixelTolerance_,this.snappedToVertex_&&(c=m>f?s[1]:s[0]),this.createOrUpdateVertexFeature_(c);for(var g=1,S=o.length;g<S;++g){var y=o[g].segment;if(!(Et(s[0],y[0])&&Et(s[1],y[1])||Et(s[0],y[1])&&Et(s[1],y[0])))break;h[r(y)]=!0}}return h[r(s)]=!0,void(this.vertexSegments_=h)}}this.vertexFeature_&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null)},t.prototype.insertVertex_=function(e,t){for(var i,n=e.segment,r=e.feature,o=e.geometry,a=e.depth,s=e.index;t.length<o.getStride();)t.push(0);switch(o.getType()){case _i.MULTI_LINE_STRING:case _i.POLYGON:(i=o.getCoordinates())[a[0]].splice(s+1,0,t);break;case _i.MULTI_POLYGON:(i=o.getCoordinates())[a[1]][a[0]].splice(s+1,0,t);break;case _i.LINE_STRING:(i=o.getCoordinates()).splice(s+1,0,t);break;default:return}this.setGeometryCoordinates_(o,i);var c=this.rBush_;c.remove(e),this.updateSegmentIndices_(o,s,a,1);var l={segment:[n[0],t],feature:r,geometry:o,depth:a,index:s};c.insert(Gt(l.segment),l),this.dragSegments_.push([l,1]);var u={segment:[t,n[1]],feature:r,geometry:o,depth:a,index:s+1};c.insert(Gt(u.segment),u),this.dragSegments_.push([u,0]),this.ignoreNextSingleClick_=!0},t.prototype.removePoint=function(){if(this.lastPointerEvent_&&this.lastPointerEvent_.type!=oe.POINTERDRAG){var e=this.lastPointerEvent_;return this.willModifyFeatures_(e),this.removeVertex_(),this.dispatchEvent(new as(os,this.features_,e)),this.modified_=!1,!0}return!1},t.prototype.removeVertex_=function(){var e,t,i,n,o,a,s,c,l,u,h,d=this.dragSegments_,p={},m=!1;for(o=d.length-1;o>=0;--o)h=r((u=(i=d[o])[0]).feature),u.depth&&(h+="-"+u.depth.join("-")),h in p||(p[h]={}),0===i[1]?(p[h].right=u,p[h].index=u.index):1==i[1]&&(p[h].left=u,p[h].index=u.index+1);for(h in p){switch(l=p[h].right,s=p[h].left,(c=(a=p[h].index)-1)<0&&(c=0),e=t=(n=(u=void 0!==s?s:l).geometry).getCoordinates(),m=!1,n.getType()){case _i.MULTI_LINE_STRING:t[u.depth[0]].length>2&&(t[u.depth[0]].splice(a,1),m=!0);break;case _i.LINE_STRING:t.length>2&&(t.splice(a,1),m=!0);break;case _i.MULTI_POLYGON:e=e[u.depth[1]];case _i.POLYGON:(e=e[u.depth[0]]).length>4&&(a==e.length-1&&(a=0),e.splice(a,1),m=!0,0===a&&(e.pop(),e.push(e[0]),c=e.length-1))}if(m){this.setGeometryCoordinates_(n,t);var f=[];if(void 0!==s&&(this.rBush_.remove(s),f.push(s.segment[0])),void 0!==l&&(this.rBush_.remove(l),f.push(l.segment[1])),void 0!==s&&void 0!==l){var g={depth:u.depth,feature:u.feature,geometry:u.geometry,index:c,segment:f};this.rBush_.insert(Gt(g.segment),g)}this.updateSegmentIndices_(n,a,u.depth,-1),this.vertexFeature_&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),d.length=0}}return m},t.prototype.setGeometryCoordinates_=function(e,t){this.changingFeature_=!0,e.setCoordinates(t),this.changingFeature_=!1},t.prototype.updateSegmentIndices_=function(e,t,i,n){this.rBush_.forEachInExtent(e.getExtent(),(function(r){r.geometry===e&&(void 0===i||void 0===r.depth||ze(r.depth,i))&&r.index>t&&(r.index+=n)}))},t}(so);function cs(e,t){return e.index-t.index}function ls(e,t){var i=t.geometry;if(i.getType()===_i.CIRCLE){var n=i;if(t.index===ns){var r=qt(n.getCenter(),e),o=Math.sqrt(r)-n.getRadius();return o*o}}return Mt(e,t.segment)}function us(e,t){var i=t.geometry;return i.getType()===_i.CIRCLE&&t.index===ns?i.getClosestPoint(e):xt(e,t.segment)}var hs={SELECT:"select"},ds=function(e){function t(t,i,n,r){e.call(this,t),this.selected=i,this.deselected=n,this.mapBrowserEvent=r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),ps=function(e){function t(t){e.call(this,{handleEvent:ms});var i=t||{};this.condition_=i.condition?i.condition:to,this.addCondition_=i.addCondition?i.addCondition:$r,this.removeCondition_=i.removeCondition?i.removeCondition:$r,this.toggleCondition_=i.toggleCondition?i.toggleCondition:no,this.multi_=!!i.multi&&i.multi,this.filter_=i.filter?i.filter:D,this.hitTolerance_=i.hitTolerance?i.hitTolerance:0;var n,r,o=new Da({source:new Qa({useSpatialIndex:!1,features:i.features,wrapX:i.wrapX}),style:i.style?i.style:(r=_a(),We(r[_i.POLYGON],r[_i.LINE_STRING]),We(r[_i.GEOMETRY_COLLECTION],r[_i.LINE_STRING]),function(e,t){return e.getGeometry()?r[e.getGeometry().getType()]:null}),updateWhileAnimating:!0,updateWhileInteracting:!0});if(this.featureOverlay_=o,i.layers)if("function"==typeof i.layers)n=i.layers;else{var a=i.layers;n=function(e){return ke(a,e)}}else n=D;this.layerFilter_=n,this.featureLayerAssociation_={};var c=this.getFeatures();S(c,s.ADD,this.addFeature_,this),S(c,s.REMOVE,this.removeFeature_,this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeatureLayerAssociation_=function(e,t){this.featureLayerAssociation_[r(e)]=t},t.prototype.getFeatures=function(){return this.featureOverlay_.getSource().getFeaturesCollection()},t.prototype.getHitTolerance=function(){return this.hitTolerance_},t.prototype.getLayer=function(e){return this.featureLayerAssociation_[r(e)]},t.prototype.getOverlay=function(){return this.featureOverlay_},t.prototype.setHitTolerance=function(e){this.hitTolerance_=e},t.prototype.setMap=function(t){var i=this.getMap(),n=this.getFeatures();i&&n.forEach(i.unskipFeature.bind(i)),e.prototype.setMap.call(this,t),this.featureOverlay_.setMap(t),t&&n.forEach(t.skipFeature.bind(t))},t.prototype.addFeature_=function(e){var t=this.getMap();t&&t.skipFeature(e.element)},t.prototype.removeFeature_=function(e){var t=this.getMap();t&&t.unskipFeature(e.element)},t.prototype.removeFeatureLayerAssociation_=function(e){delete this.featureLayerAssociation_[r(e)]},t}(kr);function ms(e){if(!this.condition_(e))return!0;var t=this.addCondition_(e),i=this.removeCondition_(e),n=this.toggleCondition_(e),r=!t&&!i&&!n,o=e.map,a=this.getFeatures(),s=[],c=[];if(r){u(this.featureLayerAssociation_),o.forEachFeatureAtPixel(e.pixel,function(e,t){if(this.filter_(e,t))return c.push(e),this.addFeatureLayerAssociation_(e,t),!this.multi_}.bind(this),{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_});for(var l=a.getLength()-1;l>=0;--l){var h=a.item(l),d=c.indexOf(h);d>-1?c.splice(d,1):(a.remove(h),s.push(h))}0!==c.length&&a.extend(c)}else{o.forEachFeatureAtPixel(e.pixel,function(e,r){if(this.filter_(e,r))return!t&&!n||ke(a.getArray(),e)?(i||n)&&ke(a.getArray(),e)&&(s.push(e),this.removeFeatureLayerAssociation_(e)):(c.push(e),this.addFeatureLayerAssociation_(e,r)),!this.multi_}.bind(this),{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_});for(var p=s.length-1;p>=0;--p)a.remove(s[p]);a.extend(c)}return(c.length>0||s.length>0)&&this.dispatchEvent(new ds(hs.SELECT,c,s,e)),eo(e)}function fs(e){var t=e||{},i=new V,n=new Br(-.005,.05,100);return(void 0===t.altShiftDragRotate||t.altShiftDragRotate)&&i.push(new uo),(void 0===t.doubleClickZoom||t.doubleClickZoom)&&i.push(new jr({delta:t.zoomDelta,duration:t.zoomDuration})),(void 0===t.dragPan||t.dragPan)&&i.push(new lo({condition:t.onFocusOnly?Zr:void 0,kinetic:n})),(void 0===t.pinchRotate||t.pinchRotate)&&i.push(new Ro),(void 0===t.pinchZoom||t.pinchZoom)&&i.push(new xo({constrainResolution:t.constrainResolution,duration:t.zoomDuration})),(void 0===t.keyboard||t.keyboard)&&(i.push(new _o),i.push(new To({delta:t.zoomDelta,duration:t.zoomDuration}))),(void 0===t.mouseWheelZoom||t.mouseWheelZoom)&&i.push(new Po({condition:t.onFocusOnly?Zr:void 0,constrainResolution:t.constrainResolution,duration:t.zoomDuration})),(void 0===t.shiftDragZoom||t.shiftDragZoom)&&i.push(new So({duration:t.zoomDuration})),i}var gs=.5,Ss=function(e){function t(t,i,n,r,o){var a=void 0!==o?Yo.IDLE:Yo.LOADED;e.call(this,t,i,n,a),this.loader_=void 0!==o?o:null,this.canvas_=r,this.error_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getError=function(){return this.error_},t.prototype.handleLoad_=function(e){e?(this.error_=e,this.state=Yo.ERROR):this.state=Yo.LOADED,this.changed()},t.prototype.load=function(){this.state==Yo.IDLE&&(this.state=Yo.LOADING,this.changed(),this.loader_(this.handleLoad_.bind(this)))},t.prototype.getImage=function(){return this.canvas_},t}(function(e){function t(t,i,n,r){e.call(this),this.extent=t,this.pixelRatio_=n,this.resolution=i,this.state=r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.changed=function(){this.dispatchEvent(E.CHANGE)},t.prototype.getExtent=function(){return this.extent},t.prototype.getImage=function(){return i()},t.prototype.getPixelRatio=function(){return this.pixelRatio_},t.prototype.getResolution=function(){return this.resolution},t.prototype.getState=function(){return this.state},t.prototype.load=function(){i()},t}(x)),ys=function(e){function t(t,i,n,r,o){e.call(this,t),this.vectorContext=i,this.frameState=n,this.context=r,this.glContext=o}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),vs=function(){};vs.prototype.drawCustom=function(e,t,i){},vs.prototype.drawGeometry=function(e){},vs.prototype.setStyle=function(e){},vs.prototype.drawCircle=function(e,t){},vs.prototype.drawFeature=function(e,t){},vs.prototype.drawGeometryCollection=function(e,t){},vs.prototype.drawLineString=function(e,t){},vs.prototype.drawMultiLineString=function(e,t){},vs.prototype.drawMultiPoint=function(e,t){},vs.prototype.drawMultiPolygon=function(e,t){},vs.prototype.drawPoint=function(e,t){},vs.prototype.drawPolygon=function(e,t){},vs.prototype.drawText=function(e,t){},vs.prototype.setFillStrokeStyle=function(e,t){},vs.prototype.setImageStyle=function(e,t){},vs.prototype.setTextStyle=function(e,t){};var _s=function(e){function t(t,i,n,r,o){e.call(this),this.context_=t,this.pixelRatio_=i,this.extent_=n,this.transform_=r,this.viewRotation_=o,this.contextFillState_=null,this.contextStrokeState_=null,this.contextTextState_=null,this.fillState_=null,this.strokeState_=null,this.image_=null,this.imageAnchorX_=0,this.imageAnchorY_=0,this.imageHeight_=0,this.imageOpacity_=0,this.imageOriginX_=0,this.imageOriginY_=0,this.imageRotateWithView_=!1,this.imageRotation_=0,this.imageScale_=0,this.imageWidth_=0,this.text_="",this.textOffsetX_=0,this.textOffsetY_=0,this.textRotateWithView_=!1,this.textRotation_=0,this.textScale_=0,this.textFillState_=null,this.textStrokeState_=null,this.textState_=null,this.pixelCoordinates_=[],this.tmpLocalTransform_=[1,0,0,1,0,0]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawImages_=function(e,t,i,n){if(this.image_){var r=Ti(e,t,i,2,this.transform_,this.pixelCoordinates_),o=this.context_,a=this.tmpLocalTransform_,s=o.globalAlpha;1!=this.imageOpacity_&&(o.globalAlpha=s*this.imageOpacity_);var c=this.imageRotation_;this.imageRotateWithView_&&(c+=this.viewRotation_);for(var l=0,u=r.length;l<u;l+=2){var h=r[l]-this.imageAnchorX_,d=r[l+1]-this.imageAnchorY_;if(0!==c||1!=this.imageScale_){var p=h+this.imageAnchorX_,m=d+this.imageAnchorY_;pn(a,p,m,this.imageScale_,this.imageScale_,c,-p,-m),o.setTransform.apply(o,a)}o.drawImage(this.image_,this.imageOriginX_,this.imageOriginY_,this.imageWidth_,this.imageHeight_,h,d,this.imageWidth_,this.imageHeight_)}0===c&&1==this.imageScale_||o.setTransform(1,0,0,1,0,0),1!=this.imageOpacity_&&(o.globalAlpha=s)}},t.prototype.drawText_=function(e,t,i,n){if(this.textState_&&""!==this.text_){this.textFillState_&&this.setContextFillState_(this.textFillState_),this.textStrokeState_&&this.setContextStrokeState_(this.textStrokeState_),this.setContextTextState_(this.textState_);var r=Ti(e,t,i,n,this.transform_,this.pixelCoordinates_),o=this.context_,a=this.textRotation_;for(this.textRotateWithView_&&(a+=this.viewRotation_);t<i;t+=n){var s=r[t]+this.textOffsetX_,c=r[t+1]+this.textOffsetY_;if(0!==a||1!=this.textScale_){var l=pn(this.tmpLocalTransform_,s,c,this.textScale_,this.textScale_,a,-s,-c);o.setTransform.apply(o,l)}this.textStrokeState_&&o.strokeText(this.text_,s,c),this.textFillState_&&o.fillText(this.text_,s,c)}0===a&&1==this.textScale_||o.setTransform(1,0,0,1,0,0)}},t.prototype.moveToLineTo_=function(e,t,i,n,r){var o=this.context_,a=Ti(e,t,i,n,this.transform_,this.pixelCoordinates_);o.moveTo(a[0],a[1]);var s=a.length;r&&(s-=2);for(var c=2;c<s;c+=2)o.lineTo(a[c],a[c+1]);return r&&o.closePath(),i},t.prototype.drawRings_=function(e,t,i,n){for(var r=0,o=i.length;r<o;++r)t=this.moveToLineTo_(e,t,i[r],n,!0);return t},t.prototype.drawCircle=function(e){if(Si(this.extent_,e.getExtent())){if(this.fillState_||this.strokeState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);var t=function(e,t,i){var n=e.getFlatCoordinates();if(n){var r=e.getStride();return Ti(n,0,n.length,r,t,i)}return null}(e,this.transform_,this.pixelCoordinates_),i=t[2]-t[0],n=t[3]-t[1],r=Math.sqrt(i*i+n*n),o=this.context_;o.beginPath(),o.arc(t[0],t[1],r,0,2*Math.PI),this.fillState_&&o.fill(),this.strokeState_&&o.stroke()}""!==this.text_&&this.drawText_(e.getCenter(),0,2,2)}},t.prototype.setStyle=function(e){this.setFillStrokeStyle(e.getFill(),e.getStroke()),this.setImageStyle(e.getImage()),this.setTextStyle(e.getText())},t.prototype.drawGeometry=function(e){switch(e.getType()){case _i.POINT:this.drawPoint(e);break;case _i.LINE_STRING:this.drawLineString(e);break;case _i.POLYGON:this.drawPolygon(e);break;case _i.MULTI_POINT:this.drawMultiPoint(e);break;case _i.MULTI_LINE_STRING:this.drawMultiLineString(e);break;case _i.MULTI_POLYGON:this.drawMultiPolygon(e);break;case _i.GEOMETRY_COLLECTION:this.drawGeometryCollection(e);break;case _i.CIRCLE:this.drawCircle(e)}},t.prototype.drawFeature=function(e,t){var i=t.getGeometryFunction()(e);i&&Si(this.extent_,i.getExtent())&&(this.setStyle(t),this.drawGeometry(i))},t.prototype.drawGeometryCollection=function(e){for(var t=e.getGeometriesArray(),i=0,n=t.length;i<n;++i)this.drawGeometry(t[i])},t.prototype.drawPoint=function(e){var t=e.getFlatCoordinates(),i=e.getStride();this.image_&&this.drawImages_(t,0,t.length,i),""!==this.text_&&this.drawText_(t,0,t.length,i)},t.prototype.drawMultiPoint=function(e){var t=e.getFlatCoordinates(),i=e.getStride();this.image_&&this.drawImages_(t,0,t.length,i),""!==this.text_&&this.drawText_(t,0,t.length,i)},t.prototype.drawLineString=function(e){if(Si(this.extent_,e.getExtent())){if(this.strokeState_){this.setContextStrokeState_(this.strokeState_);var t=this.context_,i=e.getFlatCoordinates();t.beginPath(),this.moveToLineTo_(i,0,i.length,e.getStride(),!1),t.stroke()}if(""!==this.text_){var n=e.getFlatMidpoint();this.drawText_(n,0,2,2)}}},t.prototype.drawMultiLineString=function(e){var t=e.getExtent();if(Si(this.extent_,t)){if(this.strokeState_){this.setContextStrokeState_(this.strokeState_);var i=this.context_,n=e.getFlatCoordinates(),r=0,o=e.getEnds(),a=e.getStride();i.beginPath();for(var s=0,c=o.length;s<c;++s)r=this.moveToLineTo_(n,r,o[s],a,!1);i.stroke()}if(""!==this.text_){var l=e.getFlatMidpoints();this.drawText_(l,0,l.length,2)}}},t.prototype.drawPolygon=function(e){if(Si(this.extent_,e.getExtent())){if(this.strokeState_||this.fillState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);var t=this.context_;t.beginPath(),this.drawRings_(e.getOrientedFlatCoordinates(),0,e.getEnds(),e.getStride()),this.fillState_&&t.fill(),this.strokeState_&&t.stroke()}if(""!==this.text_){var i=e.getFlatInteriorPoint();this.drawText_(i,0,2,2)}}},t.prototype.drawMultiPolygon=function(e){if(Si(this.extent_,e.getExtent())){if(this.strokeState_||this.fillState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);var t=this.context_,i=e.getOrientedFlatCoordinates(),n=0,r=e.getEndss(),o=e.getStride();t.beginPath();for(var a=0,s=r.length;a<s;++a){var c=r[a];n=this.drawRings_(i,n,c,o)}this.fillState_&&t.fill(),this.strokeState_&&t.stroke()}if(""!==this.text_){var l=e.getFlatInteriorPoints();this.drawText_(l,0,l.length,2)}}},t.prototype.setContextFillState_=function(e){var t=this.context_,i=this.contextFillState_;i?i.fillStyle!=e.fillStyle&&(i.fillStyle=t.fillStyle=e.fillStyle):(t.fillStyle=e.fillStyle,this.contextFillState_={fillStyle:e.fillStyle})},t.prototype.setContextStrokeState_=function(e){var t=this.context_,i=this.contextStrokeState_;i?(i.lineCap!=e.lineCap&&(i.lineCap=t.lineCap=e.lineCap),te&&(ze(i.lineDash,e.lineDash)||t.setLineDash(i.lineDash=e.lineDash),i.lineDashOffset!=e.lineDashOffset&&(i.lineDashOffset=t.lineDashOffset=e.lineDashOffset)),i.lineJoin!=e.lineJoin&&(i.lineJoin=t.lineJoin=e.lineJoin),i.lineWidth!=e.lineWidth&&(i.lineWidth=t.lineWidth=e.lineWidth),i.miterLimit!=e.miterLimit&&(i.miterLimit=t.miterLimit=e.miterLimit),i.strokeStyle!=e.strokeStyle&&(i.strokeStyle=t.strokeStyle=e.strokeStyle)):(t.lineCap=e.lineCap,te&&(t.setLineDash(e.lineDash),t.lineDashOffset=e.lineDashOffset),t.lineJoin=e.lineJoin,t.lineWidth=e.lineWidth,t.miterLimit=e.miterLimit,t.strokeStyle=e.strokeStyle,this.contextStrokeState_={lineCap:e.lineCap,lineDash:e.lineDash,lineDashOffset:e.lineDashOffset,lineJoin:e.lineJoin,lineWidth:e.lineWidth,miterLimit:e.miterLimit,strokeStyle:e.strokeStyle})},t.prototype.setContextTextState_=function(e){var t=this.context_,i=this.contextTextState_,n=e.textAlign?e.textAlign:"center";i?(i.font!=e.font&&(i.font=t.font=e.font),i.textAlign!=n&&(i.textAlign=t.textAlign=n),i.textBaseline!=e.textBaseline&&(i.textBaseline=t.textBaseline=e.textBaseline)):(t.font=e.font,t.textAlign=n,t.textBaseline=e.textBaseline,this.contextTextState_={font:e.font,textAlign:n,textBaseline:e.textBaseline})},t.prototype.setFillStrokeStyle=function(e,t){if(e){var i=e.getColor();this.fillState_={fillStyle:Xo(i||Zo)}}else this.fillState_=null;if(t){var n=t.getColor(),r=t.getLineCap(),o=t.getLineDash(),a=t.getLineDashOffset(),s=t.getLineJoin(),c=t.getWidth(),l=t.getMiterLimit();this.strokeState_={lineCap:void 0!==r?r:"round",lineDash:o||Qo,lineDashOffset:a||0,lineJoin:void 0!==s?s:"round",lineWidth:this.pixelRatio_*(void 0!==c?c:1),miterLimit:void 0!==l?l:10,strokeStyle:Xo(n||Jo)}}else this.strokeState_=null},t.prototype.setImageStyle=function(e){if(e){var t=e.getAnchor(),i=e.getImage(1),n=e.getOrigin(),r=e.getSize();this.imageAnchorX_=t[0],this.imageAnchorY_=t[1],this.imageHeight_=r[1],this.image_=i,this.imageOpacity_=e.getOpacity(),this.imageOriginX_=n[0],this.imageOriginY_=n[1],this.imageRotateWithView_=e.getRotateWithView(),this.imageRotation_=e.getRotation(),this.imageScale_=e.getScale()*this.pixelRatio_,this.imageWidth_=r[0]}else this.image_=null},t.prototype.setTextStyle=function(e){if(e){var t=e.getFill();if(t){var i=t.getColor();this.textFillState_={fillStyle:Xo(i||Zo)}}else this.textFillState_=null;var n=e.getStroke();if(n){var r=n.getColor(),o=n.getLineCap(),a=n.getLineDash(),s=n.getLineDashOffset(),c=n.getLineJoin(),l=n.getWidth(),u=n.getMiterLimit();this.textStrokeState_={lineCap:void 0!==o?o:"round",lineDash:a||Qo,lineDashOffset:s||0,lineJoin:void 0!==c?c:"round",lineWidth:void 0!==l?l:1,miterLimit:void 0!==u?u:10,strokeStyle:Xo(r||Jo)}}else this.textStrokeState_=null;var h=e.getFont(),d=e.getOffsetX(),p=e.getOffsetY(),m=e.getRotateWithView(),f=e.getRotation(),g=e.getScale(),S=e.getText(),y=e.getTextAlign(),v=e.getTextBaseline();this.textState_={font:void 0!==h?h:"10px sans-serif",textAlign:void 0!==y?y:"center",textBaseline:void 0!==v?v:"middle"},this.text_=void 0!==S?S:"",this.textOffsetX_=void 0!==d?this.pixelRatio_*d:0,this.textOffsetY_=void 0!==p?this.pixelRatio_*p:0,this.textRotateWithView_=void 0!==m&&m,this.textRotation_=void 0!==f?f:0,this.textScale_=this.pixelRatio_*(void 0!==g?g:1)}else this.text_=""},t}(vs),Cs=function(){this.cache_={},this.cacheSize_=0,this.maxCacheSize_=32};function Ts(e,t,i){return t+":"+e+":"+(i?Uo(i):"null")}Cs.prototype.clear=function(){this.cache_={},this.cacheSize_=0},Cs.prototype.expire=function(){if(this.cacheSize_>this.maxCacheSize_){var e=0;for(var t in this.cache_){var i=this.cache_[t];0!=(3&e++)||i.hasListener()||(delete this.cache_[t],--this.cacheSize_)}}},Cs.prototype.get=function(e,t,i){var n=Ts(e,t,i);return n in this.cache_?this.cache_[n]:null},Cs.prototype.set=function(e,t,i,n){var r=Ts(e,t,i);this.cache_[r]=n,++this.cacheSize_},Cs.prototype.setSize=function(e){this.maxCacheSize_=e,this.expire()};var Ds=new Cs,As=function(e){function t(t){e.call(this),this.map_=t,this.layerRenderers_={},this.layerRendererListeners_={},this.layerRendererConstructors_=[]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.dispatchRenderEvent=function(e,t){i()},t.prototype.registerLayerRenderers=function(e){this.layerRendererConstructors_.push.apply(this.layerRendererConstructors_,e)},t.prototype.calculateMatrices2D=function(e){var t=e.viewState,i=e.coordinateToPixelTransform,n=e.pixelToCoordinateTransform;pn(i,e.size[0]/2,e.size[1]/2,1/t.resolution,-1/t.resolution,-t.rotation,-t.center[0],-t.center[1]),mn(cn(n,i))},t.prototype.removeLayerRenderers=function(){for(var e in this.layerRenderers_)this.removeLayerRendererByKey_(e).dispose()},t.prototype.forEachFeatureAtCoordinate=function(e,t,i,n,o,a,s){var c,l=t.viewState,u=l.resolution;function h(e,i){var a=t.layerStates[r(i)].managed;if(!(r(e)in t.skippedFeatureUids)||a)return n.call(o,e,a?i:null)}var d=l.projection,p=e;if(d.canWrapX()){var m=d.getExtent(),f=gi(m),g=e[0];(g<m[0]||g>m[2])&&(p=[g+f*Math.ceil((m[0]-g)/f),e[1]])}var S,y=t.layerStatesArray;for(S=y.length-1;S>=0;--S){var v=y[S],_=v.layer;if(Ir(v,u)&&a.call(s,_)){var C=this.getLayerRenderer(_),T=_.getSource();if(T&&(c=C.forEachFeatureAtCoordinate(T.getWrapX()?p:e,t,i,h)),c)return c}}},t.prototype.forEachLayerAtPixel=function(e,t,n,r,o,a,s){return i()},t.prototype.hasFeatureAtCoordinate=function(e,t,i,n,r){return void 0!==this.forEachFeatureAtCoordinate(e,t,i,D,this,n,r)},t.prototype.getLayerRenderer=function(e){var t=r(e);if(t in this.layerRenderers_)return this.layerRenderers_[t];for(var i,n=0,o=this.layerRendererConstructors_.length;n<o;++n){var a=this.layerRendererConstructors_[n];if(a.handles(e)){i=a.create(this,e);break}}if(!i)throw new Error("Unable to create renderer for layer: "+e.getType());return this.layerRenderers_[t]=i,this.layerRendererListeners_[t]=S(i,E.CHANGE,this.handleLayerRendererChange_,this),i},t.prototype.getLayerRendererByKey=function(e){return this.layerRenderers_[e]},t.prototype.getLayerRenderers=function(){return this.layerRenderers_},t.prototype.getMap=function(){return this.map_},t.prototype.handleLayerRendererChange_=function(){this.map_.render()},t.prototype.removeLayerRendererByKey_=function(e){var t=this.layerRenderers_[e];return delete this.layerRenderers_[e],_(this.layerRendererListeners_[e]),delete this.layerRendererListeners_[e],t},t.prototype.removeUnusedLayerRenderers_=function(e,t){for(var i in this.layerRenderers_)t&&i in t.layerStates||this.removeLayerRendererByKey_(i).dispose()},t.prototype.renderFrame=function(e){i()},t.prototype.scheduleExpireIconCache=function(e){e.postRenderFunctions.push(Is)},t.prototype.scheduleRemoveUnusedLayerRenderers=function(e){for(var t in this.layerRenderers_)if(!(t in e.layerStates))return void e.postRenderFunctions.push(this.removeUnusedLayerRenderers_.bind(this))},t}(T);function Is(e,t){Ds.expire()}function Ps(e,t){return e.zIndex-t.zIndex}var Rs=[],xs=function(e){function t(t){e.call(this,t);var i=t.getViewport();this.context_=nr(),this.canvas_=this.context_.canvas,this.canvas_.style.width="100%",this.canvas_.style.height="100%",this.canvas_.style.display="block",this.canvas_.className=vr,i.insertBefore(this.canvas_,i.childNodes[0]||null),this.renderedVisible_=!0,this.transform_=[1,0,0,1,0,0]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.dispatchRenderEvent=function(e,t){var i=this.getMap(),n=this.context_;if(i.hasListener(e)){var r=t.extent,o=t.pixelRatio,a=t.viewState.rotation,s=this.getTransform(t),c=new _s(n,o,r,s,a),l=new ys(e,c,t,n,null);i.dispatchEvent(l)}},t.prototype.getTransform=function(e){var t=e.viewState,i=this.canvas_.width/2,n=this.canvas_.height/2,r=e.pixelRatio/t.resolution,o=-r,a=-t.rotation,s=-t.center[0],c=-t.center[1];return pn(this.transform_,i,n,r,o,a,s,c)},t.prototype.renderFrame=function(e){if(e){var t=this.context_,i=e.pixelRatio,n=Math.round(e.size[0]*i),r=Math.round(e.size[1]*i);this.canvas_.width!=n||this.canvas_.height!=r?(this.canvas_.width=n,this.canvas_.height=r):t.clearRect(0,0,n,r);var o=e.viewState.rotation;this.calculateMatrices2D(e),this.dispatchRenderEvent(nt,e);var a=e.layerStatesArray;He(a,Ps),o&&(t.save(),ua(t,o,n/2,r/2));var s,c,l=e.viewState.resolution;for(s=0,c=a.length;s<c;++s){var u=a[s],h=u.layer,d=this.getLayerRenderer(h);Ir(u,l)&&u.sourceState==hr.READY&&d.prepareFrame(e,u)&&d.composeFrame(e,u,t)}o&&t.restore(),this.dispatchRenderEvent(it,e),this.renderedVisible_||(this.canvas_.style.display="",this.renderedVisible_=!0),this.scheduleRemoveUnusedLayerRenderers(e),this.scheduleExpireIconCache(e)}else this.renderedVisible_&&(this.canvas_.style.display="none",this.renderedVisible_=!1)},t.prototype.forEachLayerAtPixel=function(e,t,i,n,r,o,a){var s,c,l=t.viewState.resolution,u=t.layerStatesArray,h=u.length,d=ln(t.pixelToCoordinateTransform,e.slice());for(c=h-1;c>=0;--c){var p=u[c],m=p.layer;if(Ir(p,l)&&o.call(a,m)&&(s=this.getLayerRenderer(m).forEachLayerAtCoordinate(d,t,i,n,r)))return s}},t.prototype.registerLayerRenderers=function(t){e.prototype.registerLayerRenderers.call(this,t);for(var i=0,n=t.length;i<n;++i){var r=t[i];ke(Rs,r)||Rs.push(r)}},t}(As),Es=function(e){function t(t){e.call(this),this.layer_=t}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createLoadedTileFinder=function(e,t,i){return function(n,r){return e.forEachLoadedTile(t,n,r,(function(e){i[n]||(i[n]={}),i[n][e.tileCoord.toString()]=e}))}},t.prototype.forEachFeatureAtCoordinate=function(e,t,i,n){},t.prototype.getLayer=function(){return this.layer_},t.prototype.handleImageChange_=function(e){e.target.getState()===Yo.LOADED&&this.renderIfReadyAndVisible()},t.prototype.hasFeatureAtCoordinate=function(e,t){return!1},t.prototype.loadImage=function(e){var t=e.getState();return t!=Yo.LOADED&&t!=Yo.ERROR&&S(e,E.CHANGE,this.handleImageChange_,this),t==Yo.IDLE&&(e.load(),t=e.getState()),t==Yo.LOADED},t.prototype.renderIfReadyAndVisible=function(){var e=this.getLayer();e.getVisible()&&e.getSourceState()==hr.READY&&this.changed()},t.prototype.scheduleExpireCache=function(e,t){if(t.canExpireCache()){var i=function(e,t,i){var n=r(e);n in i.usedTiles&&e.expireCache(i.viewState.projection,i.usedTiles[n])}.bind(null,t);e.postRenderFunctions.push(i)}},t.prototype.updateUsedTiles=function(e,t,i,n){var o=r(t),a=i.toString();o in e?a in e[o]?e[o][a].extend(n):e[o][a]=n:(e[o]={},e[o][a]=n)},t.prototype.manageTilePyramid=function(e,t,i,n,o,a,s,c,l,u){var h=r(t);h in e.wantedTiles||(e.wantedTiles[h]={});var d,p,m,f,g,S,y=e.wantedTiles[h],v=e.tileQueue;for(S=i.getMinZoom();S<=s;++S)for(p=i.getTileRangeForExtentAndZ(a,S,p),m=i.getResolution(S),f=p.minX;f<=p.maxX;++f)for(g=p.minY;g<=p.maxY;++g)s-S<=c?((d=t.getTile(S,f,g,n,o)).getState()==at.IDLE&&(y[d.getKey()]=!0,v.isKeyQueued(d.getKey())||v.enqueue([d,h,i.getTileCoordCenter(d.tileCoord),m])),void 0!==l&&l.call(u,d)):t.useTile(S,f,g,o)},t}(b),bs=function(e){function t(t){e.call(this,t),this.renderedResolution,this.transform_=[1,0,0,1,0,0]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.clip=function(e,t,i){var n=t.pixelRatio,r=t.size[0]*n,o=t.size[1]*n,a=t.viewState.rotation,s=mi(i),c=fi(i),l=ci(i),u=si(i);ln(t.coordinateToPixelTransform,s),ln(t.coordinateToPixelTransform,c),ln(t.coordinateToPixelTransform,l),ln(t.coordinateToPixelTransform,u),e.save(),ua(e,-a,r/2,o/2),e.beginPath(),e.moveTo(s[0]*n,s[1]*n),e.lineTo(c[0]*n,c[1]*n),e.lineTo(l[0]*n,l[1]*n),e.lineTo(u[0]*n,u[1]*n),e.clip(),ua(e,a,r/2,o/2)},t.prototype.dispatchComposeEvent_=function(e,t,i,n){var r=this.getLayer();if(r.hasListener(e)){var o=i.size[0]*i.pixelRatio,a=i.size[1]*i.pixelRatio,s=i.viewState.rotation;ua(t,-s,o/2,a/2);var c=void 0!==n?n:this.getTransform(i,0),l=new _s(t,i.pixelRatio,i.extent,c,i.viewState.rotation),u=new ys(e,l,i,t,null);r.dispatchEvent(u),ua(t,s,o/2,a/2)}},t.prototype.forEachLayerAtCoordinate=function(e,t,i,n,r){return this.forEachFeatureAtCoordinate(e,t,i,D)?n.call(r,this.getLayer(),null):void 0},t.prototype.postCompose=function(e,t,i,n){this.dispatchComposeEvent_(it,e,t,n)},t.prototype.preCompose=function(e,t,i){this.dispatchComposeEvent_(nt,e,t,i)},t.prototype.dispatchRenderEvent=function(e,t,i){this.dispatchComposeEvent_(rt,e,t,i)},t.prototype.getTransform=function(e,t){var i=e.viewState,n=e.pixelRatio,r=n*e.size[0]/2,o=n*e.size[1]/2,a=n/i.resolution,s=-a,c=-i.rotation,l=-i.center[0]+t,u=-i.center[1];return pn(this.transform_,r,o,a,s,c,l,u)},t.prototype.composeFrame=function(e,t,n){i()},t.prototype.prepareFrame=function(e,t){return i()},t}(Es),Os=function(e){function t(t){e.call(this,t),this.coordinateToCanvasPixelTransform=[1,0,0,1,0,0],this.hitCanvasContext_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.composeFrame=function(e,t,i){this.preCompose(i,e);var n=this.getImage();if(n){var r=t.extent,o=void 0!==r&&!jt(r,e.extent)&&Si(r,e.extent);o&&this.clip(i,e,r);var a=this.getImageTransform(),s=i.globalAlpha;i.globalAlpha=t.opacity;var c=a[4],l=a[5],u=n.width*a[0],h=n.height*a[3];u>=.5&&h>=.5&&i.drawImage(n,0,0,+n.width,+n.height,Math.round(c),Math.round(l),Math.round(u),Math.round(h)),i.globalAlpha=s,o&&i.restore()}this.postCompose(i,e,t)},t.prototype.getImage=function(){return i()},t.prototype.getImageTransform=function(){return i()},t.prototype.forEachLayerAtCoordinate=function(e,t,i,n,r){if(this.getImage()){var o=ln(this.coordinateToCanvasPixelTransform,e.slice());Ot(o,t.viewState.resolution/this.renderedResolution),this.hitCanvasContext_||(this.hitCanvasContext_=nr(1,1)),this.hitCanvasContext_.clearRect(0,0,1,1),this.hitCanvasContext_.drawImage(this.getImage(),o[0],o[1],1,1,0,0,1,1);var a=this.hitCanvasContext_.getImageData(0,0,1,1).data;return a[3]>0?n.call(r,this.getLayer(),a):void 0}},t}(bs),qs=function(e){function t(i){if(e.call(this,i),this.image_=null,this.imageTransform_=[1,0,0,1,0,0],this.skippedFeatures_=[],this.vectorRenderer_=null,i.getType()===Bo.VECTOR)for(var n=0,r=Rs.length;n<r;++n){var o=Rs[n];if(o!==t&&o.handles(i)){this.vectorRenderer_=new o(i);break}}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.disposeInternal=function(){this.vectorRenderer_&&this.vectorRenderer_.dispose(),e.prototype.disposeInternal.call(this)},t.prototype.getImage=function(){return this.image_?this.image_.getImage():null},t.prototype.getImageTransform=function(){return this.imageTransform_},t.prototype.prepareFrame=function(e,t){var i,n=e.pixelRatio,r=e.size,o=e.viewState,a=o.center,s=o.resolution,c=this.getLayer().getSource(),u=e.viewHints,h=this.vectorRenderer_,d=e.extent;if(h||void 0===t.extent||(d=pi(d,t.extent)),!u[Tt]&&!u[Dt]&&!yi(d)){var p=o.projection,m=this.skippedFeatures_;if(h){var f=h.context,g=l({},e,{size:[gi(d)/s,di(d)/s],viewState:l({},e.viewState,{rotation:0})}),S=Object.keys(g.skippedFeatureUids).sort();i=new Ss(d,s,n,f.canvas,(function(e){!h.prepareFrame(g,t)||!h.replayGroupChanged&&ze(m,S)||(f.canvas.width=g.size[0]*n,f.canvas.height=g.size[1]*n,h.compose(f,g,t),m=S,e())}))}else i=c.getImage(d,s,n,p);i&&this.loadImage(i)&&(this.image_=i,this.skippedFeatures_=m)}if(this.image_){var y=(i=this.image_).getExtent(),v=i.getResolution(),_=i.getPixelRatio(),C=n*v/(s*_),T=pn(this.imageTransform_,n*r[0]/2,n*r[1]/2,C,C,0,_*(y[0]-a[0])/v,_*(a[1]-y[3])/v);pn(this.coordinateToCanvasPixelTransform,n*r[0]/2-T[4],n*r[1]/2-T[5],n/s,-n/s,0,-a[0],-a[1]),this.renderedResolution=v*n/_}return!!this.image_},t.prototype.forEachFeatureAtCoordinate=function(t,i,n,r){return this.vectorRenderer_?this.vectorRenderer_.forEachFeatureAtCoordinate(t,i,n,r):e.prototype.forEachFeatureAtCoordinate.call(this,t,i,n,r)},t}(Os);qs.handles=function(e){return e.getType()===Bo.IMAGE||e.getType()===Bo.VECTOR&&e.getRenderMode()===Vo.IMAGE},qs.create=function(e,t){return new qs(t)};var Fs=function(e,t,i,n){this.minX=e,this.maxX=t,this.minY=i,this.maxY=n};function Ms(e,t,i,n,r){return void 0!==r?(r.minX=e,r.maxX=t,r.minY=i,r.maxY=n,r):new Fs(e,t,i,n)}Fs.prototype.contains=function(e){return this.containsXY(e[1],e[2])},Fs.prototype.containsTileRange=function(e){return this.minX<=e.minX&&e.maxX<=this.maxX&&this.minY<=e.minY&&e.maxY<=this.maxY},Fs.prototype.containsXY=function(e,t){return this.minX<=e&&e<=this.maxX&&this.minY<=t&&t<=this.maxY},Fs.prototype.equals=function(e){return this.minX==e.minX&&this.minY==e.minY&&this.maxX==e.maxX&&this.maxY==e.maxY},Fs.prototype.extend=function(e){e.minX<this.minX&&(this.minX=e.minX),e.maxX>this.maxX&&(this.maxX=e.maxX),e.minY<this.minY&&(this.minY=e.minY),e.maxY>this.maxY&&(this.maxY=e.maxY)},Fs.prototype.getHeight=function(){return this.maxY-this.minY+1},Fs.prototype.getSize=function(){return[this.getWidth(),this.getHeight()]},Fs.prototype.getWidth=function(){return this.maxX-this.minX+1},Fs.prototype.intersects=function(e){return this.minX<=e.maxX&&this.maxX>=e.minX&&this.minY<=e.maxY&&this.maxY>=e.minY};var Ls=function(e){function t(t,i){e.call(this,t),this.context=i?null:nr(),this.oversampling_,this.renderedExtent_=null,this.renderedRevision,this.renderedTiles=[],this.newTiles_=!1,this.tmpExtent=[1/0,1/0,-1/0,-1/0],this.tmpTileRange_=new Fs(0,0,0,0),this.imageTransform_=[1,0,0,1,0,0],this.zDirection=0}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.isDrawableTile_=function(e){var t=this.getLayer(),i=e.getState(),n=t.getUseInterimTilesOnError();return i==at.LOADED||i==at.EMPTY||i==at.ERROR&&!n},t.prototype.getTile=function(e,t,i,n,r){var o=this.getLayer(),a=o.getSource().getTile(e,t,i,n,r);return a.getState()==at.ERROR&&(o.getUseInterimTilesOnError()?o.getPreload()>0&&(this.newTiles_=!0):a.setState(at.LOADED)),this.isDrawableTile_(a)||(a=a.getInterimTile()),a},t.prototype.prepareFrame=function(e,t){var i=e.pixelRatio,n=e.size,o=e.viewState,a=o.projection,s=o.resolution,c=o.center,l=this.getLayer(),u=l.getSource(),h=u.getRevision(),d=u.getTileGridForProjection(a),p=d.getZForResolution(s,this.zDirection),m=d.getResolution(p),f=Math.round(s/m)||1,g=e.extent;if(void 0!==t.extent&&(g=pi(g,t.extent)),yi(g))return!1;var S=d.getTileRangeForExtentAndZ(g,p),y=d.getTileRangeExtent(p,S),v=u.getTilePixelRatio(i),_={};_[p]={};var C,T,D,A=this.createLoadedTileFinder(u,a,_),I=e.viewHints,P=I[Tt]||I[Dt],R=this.tmpExtent,x=this.tmpTileRange_;for(this.newTiles_=!1,T=S.minX;T<=S.maxX;++T)for(D=S.minY;D<=S.maxY;++D)if(!(Date.now()-e.time>16&&P)){if(C=this.getTile(p,T,D,i,a),this.isDrawableTile_(C)){var E=r(this);if(C.getState()==at.LOADED){_[p][C.tileCoord.toString()]=C;var b=C.inTransition(E);this.newTiles_||!b&&-1!==this.renderedTiles.indexOf(C)||(this.newTiles_=!0)}if(1===C.getAlpha(E,e.time))continue}var O=d.getTileCoordChildTileRange(C.tileCoord,x,R),q=!1;O&&(q=A(p+1,O)),q||d.forEachTileCoordParentTileRange(C.tileCoord,A,null,x,R)}var F=m*i/v*f;if(!(this.renderedResolution&&Date.now()-e.time>16&&P)&&(this.newTiles_||!this.renderedExtent_||!jt(this.renderedExtent_,g)||this.renderedRevision!=h||f!=this.oversampling_||!P&&F!=this.renderedResolution)){var M=this.context;if(M){var L=u.getTilePixelSize(p,i,a),w=Math.round(S.getWidth()*L[0]/f),N=Math.round(S.getHeight()*L[1]/f),B=M.canvas;B.width!=w||B.height!=N?(this.oversampling_=f,B.width=w,B.height=N):(this.renderedExtent_&&!ei(y,this.renderedExtent_)&&M.clearRect(0,0,w,N),f=this.oversampling_)}this.renderedTiles.length=0;var V,k,G,U,W,z,H,j,X,Y,K=Object.keys(_).map(Number);for(K.sort((function(e,t){return e===p?1:t===p?-1:e>t?1:e<t?-1:0})),U=0,W=K.length;U<W;++U)for(var Z in G=K[U],k=u.getTilePixelSize(G,i,a),V=d.getResolution(G)/m,H=v*u.getGutterForProjection(a),j=_[G])C=j[Z],T=((z=d.getTileCoordExtent(C.getTileCoord(),R))[0]-y[0])/m*v/f,D=(y[3]-z[3])/m*v/f,X=k[0]*V/f,Y=k[1]*V/f,this.drawTileImage(C,e,t,T,D,X,Y,H,p===G),this.renderedTiles.push(C);this.renderedRevision=h,this.renderedResolution=m*i/v*f,this.renderedExtent_=y}var Q=this.renderedResolution/s,J=pn(this.imageTransform_,i*n[0]/2,i*n[1]/2,Q,Q,0,(this.renderedExtent_[0]-c[0])/this.renderedResolution*i,(c[1]-this.renderedExtent_[3])/this.renderedResolution*i);return pn(this.coordinateToCanvasPixelTransform,i*n[0]/2-J[4],i*n[1]/2-J[5],i/s,-i/s,0,-c[0],-c[1]),this.updateUsedTiles(e.usedTiles,u,p,S),this.manageTilePyramid(e,u,d,i,a,g,p,l.getPreload()),this.scheduleExpireCache(e,u),this.renderedTiles.length>0},t.prototype.drawTileImage=function(e,t,i,n,o,a,s,c,l){var u=this.getTileImage(e);if(u){var h=r(this),d=l?e.getAlpha(h,t.time):1,p=this.getLayer().getSource();1!==d||p.getOpaque(t.viewState.projection)||this.context.clearRect(n,o,a,s);var m=d!==this.context.globalAlpha;m&&(this.context.save(),this.context.globalAlpha=d),this.context.drawImage(u,c,c,u.width-2*c,u.height-2*c,n,o,a,s),m&&this.context.restore(),1!==d?t.animate=!0:l&&e.endTransition(h)}},t.prototype.getImage=function(){var e=this.context;return e?e.canvas:null},t.prototype.getImageTransform=function(){return this.imageTransform_},t.prototype.getTileImage=function(e){return e.getImage()},t}(Os);Ls.handles=function(e){return e.getType()===Bo.TILE},Ls.create=function(e,t){return new Ls(t)},Ls.prototype.getLayer;var ws=function(){};ws.prototype.getReplay=function(e,t){return i()},ws.prototype.isEmpty=function(){return i()},ws.prototype.addDeclutter=function(e){return i()};var Ns={CIRCLE:"Circle",DEFAULT:"Default",IMAGE:"Image",LINE_STRING:"LineString",POLYGON:"Polygon",TEXT:"Text"};function Bs(e,t,i,n,r,o,a,s){for(var c,l,u,h=[],d=e[t]>e[i-n],p=r.length,m=e[t],f=e[t+1],g=e[t+=n],S=e[t+1],y=0,v=Math.sqrt(Math.pow(g-m,2)+Math.pow(S-f,2)),_="",C=0,T=0;T<p;++T){l=d?p-T-1:T;var D=r.charAt(l),A=o(_=d?D+_:_+D)-C;C+=A;for(var I=a+A/2;t<i-n&&y+v<I;)m=g,f=S,g=e[t+=n],S=e[t+1],y+=v,v=Math.sqrt(Math.pow(g-m,2)+Math.pow(S-f,2));var P=I-y,R=Math.atan2(S-f,g-m);if(d&&(R+=R>0?-Math.PI:Math.PI),void 0!==u){var x=R-u;if(x+=x>Math.PI?-2*Math.PI:x<-Math.PI?2*Math.PI:0,Math.abs(x)>s)return null}var E=P/v,b=yt(m,g,E),O=yt(f,S,E);u==R?(d&&(c[0]=b,c[1]=O,c[2]=A/2),c[4]=_):(C=A,c=[b,O,A/2,R,_=D],d?h.unshift(c):h.push(c),u=R),a+=A}return h}var Vs=0,ks=1,Gs=2,Us=3,Ws=4,zs=5,Hs=6,js=7,Xs=8,Ys=9,Ks=10,Zs=11,Qs=12,Js=[Xs],$s=[Qs],ec=[ks],tc=[Us],ic=[Ns.POLYGON,Ns.CIRCLE,Ns.LINE_STRING,Ns.IMAGE,Ns.TEXT,Ns.DEFAULT],nc={left:0,end:0,center:.5,right:1,start:1,top:0,middle:.5,hanging:.2,alphabetic:.8,ideographic:.8,bottom:1},rc=[1/0,1/0,-1/0,-1/0],oc=[1,0,0,1,0,0],ac=function(e){function t(t,i,n,r,o,a){e.call(this),this.declutterTree=a,this.tolerance=t,this.maxExtent=i,this.overlaps=o,this.pixelRatio=r,this.maxLineWidth=0,this.resolution=n,this.alignFill_,this.beginGeometryInstruction1_=null,this.beginGeometryInstruction2_=null,this.bufferedMaxExtent_=null,this.instructions=[],this.coordinates=[],this.coordinateCache_={},this.renderedTransform_=[1,0,0,1,0,0],this.hitDetectionInstructions=[],this.pixelCoordinates_=null,this.state={},this.viewRotation_=0}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.replayTextBackground_=function(e,t,i,n,r,o,a){e.beginPath(),e.moveTo.apply(e,t),e.lineTo.apply(e,i),e.lineTo.apply(e,n),e.lineTo.apply(e,r),e.lineTo.apply(e,t),o&&(this.alignFill_=o[2],this.fill_(e)),a&&(this.setStrokeStyle_(e,a),e.stroke())},t.prototype.replayImage_=function(e,t,i,n,r,o,a,s,c,l,u,h,d,p,m,f,g,S){var y=g||S;t-=r*=d,i-=o*=d;var v,_,C,T,D=m+l>n.width?n.width-l:m,A=s+u>n.height?n.height-u:s,I=f[3]+D*d+f[1],P=f[0]+A*d+f[2],R=t-f[3],x=i-f[0];(y||0!==h)&&(v=[R,x],_=[R+I,x],C=[R+I,x+P],T=[R,x+P]);var E=null;if(0!==h){var b=t+r,O=i+o;E=pn(oc,b,O,1,1,h,-b,-O),Zt(rc),ii(rc,ln(oc,v)),ii(rc,ln(oc,_)),ii(rc,ln(oc,C)),ii(rc,ln(oc,T))}else Kt(R,x,R+I,x+P,rc);var q=e.canvas,F=S?S[2]*d/2:0,M=rc[0]-F<=q.width&&rc[2]+F>=0&&rc[1]-F<=q.height&&rc[3]+F>=0;if(p&&(t=Math.round(t),i=Math.round(i)),a){if(!M&&1==a[4])return;ti(a,rc);var L=M?[e,E?E.slice(0):null,c,n,l,u,D,A,t,i,d]:null;L&&y&&L.push(g,S,v,_,C,T),a.push(L)}else M&&(y&&this.replayTextBackground_(e,v,_,C,T,g,S),da(e,E,c,n,l,u,D,A,t,i,d))},t.prototype.applyPixelRatio=function(e){var t=this.pixelRatio;return 1==t?e:e.map((function(e){return e*t}))},t.prototype.appendFlatCoordinates=function(e,t,i,n,r,o){var a=this.coordinates.length,s=this.getBufferedMaxExtent();o&&(t+=n);var c,l,u,h=[e[t],e[t+1]],d=[NaN,NaN],p=!0;for(c=t+n;c<i;c+=n)d[0]=e[c],d[1]=e[c+1],(u=Yt(s,d))!==l?(p&&(this.coordinates[a++]=h[0],this.coordinates[a++]=h[1]),this.coordinates[a++]=d[0],this.coordinates[a++]=d[1],p=!1):u===kt.INTERSECTING?(this.coordinates[a++]=d[0],this.coordinates[a++]=d[1],p=!1):p=!0,h[0]=d[0],h[1]=d[1],l=u;return(r&&p||c===t+n)&&(this.coordinates[a++]=h[0],this.coordinates[a++]=h[1]),a},t.prototype.drawCustomCoordinates_=function(e,t,i,n,r){for(var o=0,a=i.length;o<a;++o){var s=i[o],c=this.appendFlatCoordinates(e,t,s,n,!1,!1);r.push(c),t=s}return t},t.prototype.drawCustom=function(e,t,i){this.beginGeometry(e,t);var n,r,o,a,s,c=e.getType(),l=e.getStride(),u=this.coordinates.length;if(c==_i.MULTI_POLYGON){n=(e=e).getOrientedFlatCoordinates(),a=[];var h=e.getEndss();s=0;for(var d=0,p=h.length;d<p;++d){var m=[];s=this.drawCustomCoordinates_(n,s,h[d],l,m),a.push(m)}this.instructions.push([Ws,u,a,e,i,bn])}else c==_i.POLYGON||c==_i.MULTI_LINE_STRING?(o=[],n=c==_i.POLYGON?e.getOrientedFlatCoordinates():e.getFlatCoordinates(),s=this.drawCustomCoordinates_(n,0,e.getEnds(),l,o),this.instructions.push([Ws,u,o,e,i,En])):c==_i.LINE_STRING||c==_i.MULTI_POINT?(n=e.getFlatCoordinates(),r=this.appendFlatCoordinates(n,0,n.length,l,!1,!1),this.instructions.push([Ws,u,r,e,i,xn])):c==_i.POINT&&(n=e.getFlatCoordinates(),this.coordinates.push(n[0],n[1]),r=this.coordinates.length,this.instructions.push([Ws,u,r,e,i]));this.endGeometry(e,t)},t.prototype.beginGeometry=function(e,t){this.beginGeometryInstruction1_=[Vs,t,0],this.instructions.push(this.beginGeometryInstruction1_),this.beginGeometryInstruction2_=[Vs,t,0],this.hitDetectionInstructions.push(this.beginGeometryInstruction2_)},t.prototype.finish=function(){},t.prototype.fill_=function(e){if(this.alignFill_){var t=ln(this.renderedTransform_,[0,0]),i=512*this.pixelRatio;e.translate(t[0]%i,t[1]%i),e.rotate(this.viewRotation_)}e.fill(),this.alignFill_&&e.setTransform.apply(e,ha)},t.prototype.setStrokeStyle_=function(e,t){e.strokeStyle=t[1],e.lineWidth=t[2],e.lineCap=t[3],e.lineJoin=t[4],e.miterLimit=t[5],te&&(e.lineDashOffset=t[7],e.setLineDash(t[6]))},t.prototype.renderDeclutter_=function(e,t){if(e&&e.length>5){var i=e[4];if(1==i||i==e.length-5){var n={minX:e[0],minY:e[1],maxX:e[2],maxY:e[3],value:t};if(!this.declutterTree.collides(n)){this.declutterTree.insert(n);for(var r=5,o=e.length;r<o;++r){var a=e[r];a&&(a.length>11&&this.replayTextBackground_(a[0],a[13],a[14],a[15],a[16],a[11],a[12]),da.apply(void 0,a))}}e.length=5,Zt(e)}}},t.prototype.replay_=function(e,t,i,n,o,a,s){var c;this.pixelCoordinates_&&ze(t,this.renderedTransform_)?c=this.pixelCoordinates_:(this.pixelCoordinates_||(this.pixelCoordinates_=[]),c=Ti(this.coordinates,0,this.coordinates.length,2,t,this.pixelCoordinates_),cn(this.renderedTransform_,t));for(var l,u,h,p,m,f,g,S,y,v,_,C,T=!d(i),D=0,A=n.length,I=0,P=0,R=0,x=null,E=null,b=this.coordinateCache_,O=this.viewRotation_,q={context:e,pixelRatio:this.pixelRatio,resolution:this.resolution,rotation:O},F=this.instructions!=n||this.overlaps?0:200;D<A;){var M=n[D];switch(M[0]){case Vs:v=M[1],T&&i[r(v)]||!v.getGeometry()?D=M[2]:void 0===s||Si(s,v.getGeometry().getExtent())?++D:D=M[2]+1;break;case ks:P>F&&(this.fill_(e),P=0),R>F&&(e.stroke(),R=0),P||R||(e.beginPath(),p=m=NaN),++D;break;case Gs:var L=c[I=M[1]],w=c[I+1],N=c[I+2]-L,B=c[I+3]-w,V=Math.sqrt(N*N+B*B);e.moveTo(L+V,w),e.arc(L,w,V,0,2*Math.PI,!0),++D;break;case Us:e.closePath(),++D;break;case Ws:I=M[1],l=M[2];var k=M[3],G=M[4],U=6==M.length?M[5]:void 0;q.geometry=k,q.feature=v,D in b||(b[D]=[]);var W=b[D];U?U(c,I,l,2,W):(W[0]=c[I],W[1]=c[I+1],W.length=2),G(W,q),++D;break;case Hs:I=M[1],l=M[2],y=M[3],u=M[4],h=M[5],S=a?null:M[6];var z=M[7],H=M[8],j=M[9],X=M[10],Y=M[11],K=M[12],Z=M[13],Q=M[14],J=void 0,$=void 0,ee=void 0;for(M.length>16?(J=M[15],$=M[16],ee=M[17]):(J=$o,$=ee=!1),Y&&(K+=O);I<l;I+=2)this.replayImage_(e,c[I],c[I+1],y,u,h,S,z,H,j,X,K,Z,o,Q,J,$?x:null,ee?E:null);this.renderDeclutter_(S,v),++D;break;case zs:var te=M[1],ie=M[2],ne=M[3];S=a?null:M[4];var re=M[5],oe=M[6],ae=M[7],se=M[8],ce=M[9],le=M[10],ue=M[11],he=M[12],de=M[13],pe=M[14],me=Fo(c,te,ie,2),fe=se(he);if(re||fe<=me){var ge=this.textStates[de].textAlign,Se=Bs(c,te,ie,2,he,se,(me-fe)*nc[ge],ae);if(Se){var ye=void 0,ve=void 0,_e=void 0,Ce=void 0,Te=void 0;if(le)for(ye=0,ve=Se.length;ye<ve;++ye)_e=(Te=Se[ye])[4],Ce=this.getImage(_e,de,"",le),u=Te[2]+ue,h=ne*Ce.height+2*(.5-ne)*ue-ce,this.replayImage_(e,Te[0],Te[1],Ce,u,h,S,Ce.height,1,0,0,Te[3],pe,!1,Ce.width,$o,null,null);if(oe)for(ye=0,ve=Se.length;ye<ve;++ye)_e=(Te=Se[ye])[4],Ce=this.getImage(_e,de,oe,""),u=Te[2],h=ne*Ce.height-ce,this.replayImage_(e,Te[0],Te[1],Ce,u,h,S,Ce.height,1,0,0,Te[3],pe,!1,Ce.width,$o,null,null)}}this.renderDeclutter_(S,v),++D;break;case js:if(void 0!==a){var De=a(v=M[1]);if(De)return De}++D;break;case Xs:F?P++:this.fill_(e),++D;break;case Ys:for(I=M[1],l=M[2],_=c[I],g=(C=c[I+1])+.5|0,(f=_+.5|0)===p&&g===m||(e.moveTo(_,C),p=f,m=g),I+=2;I<l;I+=2)f=(_=c[I])+.5|0,g=(C=c[I+1])+.5|0,I!=l-2&&f===p&&g===m||(e.lineTo(_,C),p=f,m=g);++D;break;case Ks:x=M,this.alignFill_=M[2],P&&(this.fill_(e),P=0,R&&(e.stroke(),R=0)),e.fillStyle=M[1],++D;break;case Zs:E=M,R&&(e.stroke(),R=0),this.setStrokeStyle_(e,M),++D;break;case Qs:F?R++:e.stroke(),++D;break;default:++D}}P&&this.fill_(e),R&&e.stroke()},t.prototype.replay=function(e,t,i,n,r){this.viewRotation_=i,this.replay_(e,t,n,this.instructions,r,void 0,void 0)},t.prototype.replayHitDetection=function(e,t,i,n,r,o){return this.viewRotation_=i,this.replay_(e,t,n,this.hitDetectionInstructions,!0,r,o)},t.prototype.reverseHitDetectionInstructions=function(){var e,t=this.hitDetectionInstructions;t.reverse();var i,n,r=t.length,o=-1;for(e=0;e<r;++e)(n=(i=t[e])[0])==js?o=e:n==Vs&&(i[2]=e,Ue(this.hitDetectionInstructions,o,e),o=-1)},t.prototype.setFillStrokeStyle=function(e,t){var i=this.state;if(e){var n=e.getColor();i.fillStyle=Xo(n||Zo)}else i.fillStyle=void 0;if(t){var r=t.getColor();i.strokeStyle=Xo(r||Jo);var o=t.getLineCap();i.lineCap=void 0!==o?o:"round";var a=t.getLineDash();i.lineDash=a?a.slice():Qo;var s=t.getLineDashOffset();i.lineDashOffset=s||0;var c=t.getLineJoin();i.lineJoin=void 0!==c?c:"round";var l=t.getWidth();i.lineWidth=void 0!==l?l:1;var u=t.getMiterLimit();i.miterLimit=void 0!==u?u:10,i.lineWidth>this.maxLineWidth&&(this.maxLineWidth=i.lineWidth,this.bufferedMaxExtent_=null)}else i.strokeStyle=void 0,i.lineCap=void 0,i.lineDash=null,i.lineDashOffset=void 0,i.lineJoin=void 0,i.lineWidth=void 0,i.miterLimit=void 0},t.prototype.createFill=function(e,t){var i=e.fillStyle,n=[Ks,i];return"string"!=typeof i&&n.push(!0),n},t.prototype.applyStroke=function(e){this.instructions.push(this.createStroke(e))},t.prototype.createStroke=function(e){return[Zs,e.strokeStyle,e.lineWidth*this.pixelRatio,e.lineCap,e.lineJoin,e.miterLimit,this.applyPixelRatio(e.lineDash),e.lineDashOffset*this.pixelRatio]},t.prototype.updateFillStyle=function(e,t,i){var n=e.fillStyle;"string"==typeof n&&e.currentFillStyle==n||(void 0!==n&&this.instructions.push(t.call(this,e,i)),e.currentFillStyle=n)},t.prototype.updateStrokeStyle=function(e,t){var i=e.strokeStyle,n=e.lineCap,r=e.lineDash,o=e.lineDashOffset,a=e.lineJoin,s=e.lineWidth,c=e.miterLimit;(e.currentStrokeStyle!=i||e.currentLineCap!=n||r!=e.currentLineDash&&!ze(e.currentLineDash,r)||e.currentLineDashOffset!=o||e.currentLineJoin!=a||e.currentLineWidth!=s||e.currentMiterLimit!=c)&&(void 0!==i&&t.call(this,e),e.currentStrokeStyle=i,e.currentLineCap=n,e.currentLineDash=r,e.currentLineDashOffset=o,e.currentLineJoin=a,e.currentLineWidth=s,e.currentMiterLimit=c)},t.prototype.endGeometry=function(e,t){this.beginGeometryInstruction1_[2]=this.instructions.length,this.beginGeometryInstruction1_=null,this.beginGeometryInstruction2_[2]=this.hitDetectionInstructions.length,this.beginGeometryInstruction2_=null;var i=[js,t];this.instructions.push(i),this.hitDetectionInstructions.push(i)},t.prototype.getBufferedMaxExtent=function(){if(!this.bufferedMaxExtent_&&(this.bufferedMaxExtent_=Wt(this.maxExtent),this.maxLineWidth>0)){var e=this.resolution*(this.maxLineWidth+1)/2;Ut(this.bufferedMaxExtent_,e,this.bufferedMaxExtent_)}return this.bufferedMaxExtent_},t}(vs),sc=function(e){function t(t,i,n,r,o,a){e.call(this,t,i,n,r,o,a),this.declutterGroup_=null,this.hitDetectionImage_=null,this.image_=null,this.anchorX_=void 0,this.anchorY_=void 0,this.height_=void 0,this.opacity_=void 0,this.originX_=void 0,this.originY_=void 0,this.rotateWithView_=void 0,this.rotation_=void 0,this.scale_=void 0,this.width_=void 0}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawCoordinates_=function(e,t,i,n){return this.appendFlatCoordinates(e,t,i,n,!1,!1)},t.prototype.drawPoint=function(e,t){if(this.image_){this.beginGeometry(e,t);var i=e.getFlatCoordinates(),n=e.getStride(),r=this.coordinates.length,o=this.drawCoordinates_(i,0,i.length,n);this.instructions.push([Hs,r,o,this.image_,this.anchorX_,this.anchorY_,this.declutterGroup_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_*this.pixelRatio,this.width_]),this.hitDetectionInstructions.push([Hs,r,o,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.declutterGroup_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_]),this.endGeometry(e,t)}},t.prototype.drawMultiPoint=function(e,t){if(this.image_){this.beginGeometry(e,t);var i=e.getFlatCoordinates(),n=e.getStride(),r=this.coordinates.length,o=this.drawCoordinates_(i,0,i.length,n);this.instructions.push([Hs,r,o,this.image_,this.anchorX_,this.anchorY_,this.declutterGroup_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_*this.pixelRatio,this.width_]),this.hitDetectionInstructions.push([Hs,r,o,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.declutterGroup_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_]),this.endGeometry(e,t)}},t.prototype.finish=function(){this.reverseHitDetectionInstructions(),this.anchorX_=void 0,this.anchorY_=void 0,this.hitDetectionImage_=null,this.image_=null,this.height_=void 0,this.scale_=void 0,this.opacity_=void 0,this.originX_=void 0,this.originY_=void 0,this.rotateWithView_=void 0,this.rotation_=void 0,this.width_=void 0},t.prototype.setImageStyle=function(e,t){var i=e.getAnchor(),n=e.getSize(),r=e.getHitDetectionImage(1),o=e.getImage(1),a=e.getOrigin();this.anchorX_=i[0],this.anchorY_=i[1],this.declutterGroup_=t,this.hitDetectionImage_=r,this.image_=o,this.height_=n[1],this.opacity_=e.getOpacity(),this.originX_=a[0],this.originY_=a[1],this.rotateWithView_=e.getRotateWithView(),this.rotation_=e.getRotation(),this.scale_=e.getScale(),this.width_=n[0]},t}(ac),cc=function(e){function t(t,i,n,r,o,a){e.call(this,t,i,n,r,o,a)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawFlatCoordinates_=function(e,t,i,n){var r=this.coordinates.length,o=this.appendFlatCoordinates(e,t,i,n,!1,!1),a=[Ys,r,o];return this.instructions.push(a),this.hitDetectionInstructions.push(a),i},t.prototype.drawLineString=function(e,t){var i=this.state,n=i.strokeStyle,r=i.lineWidth;if(void 0!==n&&void 0!==r){this.updateStrokeStyle(i,this.applyStroke),this.beginGeometry(e,t),this.hitDetectionInstructions.push([Zs,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset],ec);var o=e.getFlatCoordinates(),a=e.getStride();this.drawFlatCoordinates_(o,0,o.length,a),this.hitDetectionInstructions.push($s),this.endGeometry(e,t)}},t.prototype.drawMultiLineString=function(e,t){var i=this.state,n=i.strokeStyle,r=i.lineWidth;if(void 0!==n&&void 0!==r){this.updateStrokeStyle(i,this.applyStroke),this.beginGeometry(e,t),this.hitDetectionInstructions.push([Zs,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset],ec);for(var o=e.getEnds(),a=e.getFlatCoordinates(),s=e.getStride(),c=0,l=0,u=o.length;l<u;++l)c=this.drawFlatCoordinates_(a,c,o[l],s);this.hitDetectionInstructions.push($s),this.endGeometry(e,t)}},t.prototype.finish=function(){var e=this.state;null!=e.lastStroke&&e.lastStroke!=this.coordinates.length&&this.instructions.push($s),this.reverseHitDetectionInstructions(),this.state=null},t.prototype.applyStroke=function(t){null!=t.lastStroke&&t.lastStroke!=this.coordinates.length&&(this.instructions.push($s),t.lastStroke=this.coordinates.length),t.lastStroke=0,e.prototype.applyStroke.call(this,t),this.instructions.push(ec)},t}(ac),lc=function(e){function t(t,i,n,r,o,a){e.call(this,t,i,n,r,o,a)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawFlatCoordinatess_=function(e,t,i,n){var r=this.state,o=void 0!==r.fillStyle,a=null!=r.strokeStyle,s=i.length;this.instructions.push(ec),this.hitDetectionInstructions.push(ec);for(var c=0;c<s;++c){var l=i[c],u=this.coordinates.length,h=this.appendFlatCoordinates(e,t,l,n,!0,!a),d=[Ys,u,h];this.instructions.push(d),this.hitDetectionInstructions.push(d),a&&(this.instructions.push(tc),this.hitDetectionInstructions.push(tc)),t=l}return o&&(this.instructions.push(Js),this.hitDetectionInstructions.push(Js)),a&&(this.instructions.push($s),this.hitDetectionInstructions.push($s)),t},t.prototype.drawCircle=function(e,t){var i=this.state,n=i.fillStyle,r=i.strokeStyle;if(void 0!==n||void 0!==r){this.setFillStrokeStyles_(e),this.beginGeometry(e,t),void 0!==i.fillStyle&&this.hitDetectionInstructions.push([Ks,Uo(Zo)]),void 0!==i.strokeStyle&&this.hitDetectionInstructions.push([Zs,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset]);var o=e.getFlatCoordinates(),a=e.getStride(),s=this.coordinates.length;this.appendFlatCoordinates(o,0,o.length,a,!1,!1);var c=[Gs,s];this.instructions.push(ec,c),this.hitDetectionInstructions.push(ec,c),this.hitDetectionInstructions.push(Js),void 0!==i.fillStyle&&this.instructions.push(Js),void 0!==i.strokeStyle&&(this.instructions.push($s),this.hitDetectionInstructions.push($s)),this.endGeometry(e,t)}},t.prototype.drawPolygon=function(e,t){var i=this.state,n=i.fillStyle,r=i.strokeStyle;if(void 0!==n||void 0!==r){this.setFillStrokeStyles_(e),this.beginGeometry(e,t),void 0!==i.fillStyle&&this.hitDetectionInstructions.push([Ks,Uo(Zo)]),void 0!==i.strokeStyle&&this.hitDetectionInstructions.push([Zs,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset]);var o=e.getEnds(),a=e.getOrientedFlatCoordinates(),s=e.getStride();this.drawFlatCoordinatess_(a,0,o,s),this.endGeometry(e,t)}},t.prototype.drawMultiPolygon=function(e,t){var i=this.state,n=i.fillStyle,r=i.strokeStyle;if(void 0!==n||void 0!==r){this.setFillStrokeStyles_(e),this.beginGeometry(e,t),void 0!==i.fillStyle&&this.hitDetectionInstructions.push([Ks,Uo(Zo)]),void 0!==i.strokeStyle&&this.hitDetectionInstructions.push([Zs,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset]);for(var o=e.getEndss(),a=e.getOrientedFlatCoordinates(),s=e.getStride(),c=0,l=0,u=o.length;l<u;++l)c=this.drawFlatCoordinatess_(a,c,o[l],s);this.endGeometry(e,t)}},t.prototype.finish=function(){this.reverseHitDetectionInstructions(),this.state=null;var e=this.tolerance;if(0!==e)for(var t=this.coordinates,i=0,n=t.length;i<n;++i)t[i]=qn(t[i],e)},t.prototype.setFillStrokeStyles_=function(e){var t=this.state;void 0!==t.fillStyle&&this.updateFillStyle(t,this.createFill,e),void 0!==t.strokeStyle&&this.updateStrokeStyle(t,this.applyStroke)},t}(ac);function uc(e,t,i,n,r){var o,a,s,c,l,u,h,d,p,m=i,f=i,g=0,S=0,y=i;for(o=i;o<n;o+=r){var v=t[o],_=t[o+1];void 0!==c&&(d=v-c,p=_-l,s=Math.sqrt(d*d+p*p),void 0!==u&&(S+=a,Math.acos((u*d+h*p)/(a*s))>e&&(S>g&&(g=S,m=y,f=o),S=0,y=o-r)),a=s,u=d,h=p),c=v,l=_}return(S+=s)>g?[y,o]:[m,f]}var hc="line",dc={Circle:lc,Default:ac,Image:sc,LineString:cc,Polygon:lc,Text:function(e){function t(t,i,n,r,o,a){e.call(this,t,i,n,r,o,a),this.declutterGroup_,this.labels_=null,this.text_="",this.textOffsetX_=0,this.textOffsetY_=0,this.textRotateWithView_=void 0,this.textRotation_=0,this.textFillState_=null,this.fillStates={},this.textStrokeState_=null,this.strokeStates={},this.textState_={},this.textStates={},this.textKey_="",this.fillKey_="",this.strokeKey_="",this.widths_={},ea.prune()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawText=function(e,t){var i=this.textFillState_,n=this.textStrokeState_,r=this.textState_;if(""!==this.text_&&r&&(i||n)){var o,a,s=this.coordinates.length,c=e.getType(),l=null,u=2,h=2;if(r.placement===hc){if(!Si(this.getBufferedMaxExtent(),e.getExtent()))return;var d;if(l=e.getFlatCoordinates(),h=e.getStride(),c==_i.LINE_STRING)d=[l.length];else if(c==_i.MULTI_LINE_STRING)d=e.getEnds();else if(c==_i.POLYGON)d=e.getEnds().slice(0,1);else if(c==_i.MULTI_POLYGON){var p=e.getEndss();for(d=[],o=0,a=p.length;o<a;++o)d.push(p[o][0])}this.beginGeometry(e,t);for(var m,f=r.textAlign,g=0,S=0,y=d.length;S<y;++S){if(null==f){var v=uc(r.maxAngle,l,g,d[S],h);g=v[0],m=v[1]}else m=d[S];for(o=g;o<m;o+=h)this.coordinates.push(l[o],l[o+1]);u=this.coordinates.length,g=d[S],this.drawChars_(s,u,this.declutterGroup_),s=u}this.endGeometry(e,t)}else{var _=this.getImage(this.text_,this.textKey_,this.fillKey_,this.strokeKey_),C=_.width/this.pixelRatio;switch(c){case _i.POINT:case _i.MULTI_POINT:u=(l=e.getFlatCoordinates()).length;break;case _i.LINE_STRING:l=e.getFlatMidpoint();break;case _i.CIRCLE:l=e.getCenter();break;case _i.MULTI_LINE_STRING:u=(l=e.getFlatMidpoints()).length;break;case _i.POLYGON:if(l=e.getFlatInteriorPoint(),!r.overflow&&l[2]/this.resolution<C)return;h=3;break;case _i.MULTI_POLYGON:var T=e.getFlatInteriorPoints();for(l=[],o=0,a=T.length;o<a;o+=3)(r.overflow||T[o+2]/this.resolution>=C)&&l.push(T[o],T[o+1]);if(0==(u=l.length))return}u=this.appendFlatCoordinates(l,0,u,h,!1,!1),(r.backgroundFill||r.backgroundStroke)&&(this.setFillStrokeStyle(r.backgroundFill,r.backgroundStroke),r.backgroundFill&&(this.updateFillStyle(this.state,this.createFill,e),this.hitDetectionInstructions.push(this.createFill(this.state,e))),r.backgroundStroke&&(this.updateStrokeStyle(this.state,this.applyStroke),this.hitDetectionInstructions.push(this.createStroke(this.state)))),this.beginGeometry(e,t),this.drawTextImage_(_,s,u),this.endGeometry(e,t)}}},t.prototype.getImage=function(e,t,i,n){var r,o=n+t+e+i+this.pixelRatio;if(!ea.containsKey(o)){var a=n?this.strokeStates[n]||this.textStrokeState_:null,s=i?this.fillStates[i]||this.textFillState_:null,c=this.textStates[t]||this.textState_,l=this.pixelRatio,u=c.scale*l,h=nc[c.textAlign||"center"],d=n&&a.lineWidth?a.lineWidth:0,p=e.split("\n"),m=p.length,f=[],g=function(e,t,i){for(var n=t.length,r=0,o=0;o<n;++o){var a=la(e,t[o]);r=Math.max(r,a),i.push(a)}return r}(c.font,p,f),S=ca(c.font),y=S*m,v=g+d,_=nr(Math.ceil(v*u),Math.ceil((y+d)*u));r=_.canvas,ea.set(o,r),1!=u&&_.scale(u,u),_.font=c.font,n&&(_.strokeStyle=a.strokeStyle,_.lineWidth=d,_.lineCap=a.lineCap,_.lineJoin=a.lineJoin,_.miterLimit=a.miterLimit,te&&a.lineDash.length&&(_.setLineDash(a.lineDash),_.lineDashOffset=a.lineDashOffset)),i&&(_.fillStyle=s.fillStyle),_.textBaseline="middle",_.textAlign="center";var C,T=.5-h,D=h*r.width/u+T*d;if(n)for(C=0;C<m;++C)_.strokeText(p[C],D+T*f[C],.5*(d+S)+C*S);if(i)for(C=0;C<m;++C)_.fillText(p[C],D+T*f[C],.5*(d+S)+C*S)}return ea.get(o)},t.prototype.drawTextImage_=function(e,t,i){var n=this.textState_,r=this.textStrokeState_,o=this.pixelRatio,a=nc[n.textAlign||"center"],s=nc[n.textBaseline],c=r&&r.lineWidth?r.lineWidth:0,l=a*e.width/o+2*(.5-a)*c,u=s*e.height/o+2*(.5-s)*c;this.instructions.push([Hs,t,i,e,(l-this.textOffsetX_)*o,(u-this.textOffsetY_)*o,this.declutterGroup_,e.height,1,0,0,this.textRotateWithView_,this.textRotation_,1,e.width,n.padding==$o?$o:n.padding.map((function(e){return e*o})),!!n.backgroundFill,!!n.backgroundStroke]),this.hitDetectionInstructions.push([Hs,t,i,e,(l-this.textOffsetX_)*o,(u-this.textOffsetY_)*o,this.declutterGroup_,e.height,1,0,0,this.textRotateWithView_,this.textRotation_,1/o,e.width,n.padding,!!n.backgroundFill,!!n.backgroundStroke])},t.prototype.drawChars_=function(e,t,i){var n=this.textStrokeState_,r=this.textState_,o=this.textFillState_,a=this.strokeKey_;n&&(a in this.strokeStates||(this.strokeStates[a]={strokeStyle:n.strokeStyle,lineCap:n.lineCap,lineDashOffset:n.lineDashOffset,lineWidth:n.lineWidth,lineJoin:n.lineJoin,miterLimit:n.miterLimit,lineDash:n.lineDash}));var s=this.textKey_;this.textKey_ in this.textStates||(this.textStates[this.textKey_]={font:r.font,textAlign:r.textAlign||"center",scale:r.scale});var c=this.fillKey_;o&&(c in this.fillStates||(this.fillStates[c]={fillStyle:o.fillStyle}));var l=this.pixelRatio,u=nc[r.textBaseline],h=this.textOffsetY_*l,d=this.text_,p=r.font,m=r.scale,f=n?n.lineWidth*m/2:0,g=this.widths_[p];g||(this.widths_[p]=g={}),this.instructions.push([zs,e,t,u,i,r.overflow,c,r.maxAngle,function(e){var t=g[e];return t||(t=g[e]=la(p,e)),t*m*l},h,a,f*l,d,s,1]),this.hitDetectionInstructions.push([zs,e,t,u,i,r.overflow,c,r.maxAngle,function(e){var t=g[e];return t||(t=g[e]=la(p,e)),t*m},h,a,f,d,s,1/l])},t.prototype.setTextStyle=function(e,t){var i,n,o;if(e){this.declutterGroup_=t;var a=e.getFill();a?((n=this.textFillState_)||(n=this.textFillState_={}),n.fillStyle=Xo(a.getColor()||Zo)):n=this.textFillState_=null;var s=e.getStroke();if(s){(o=this.textStrokeState_)||(o=this.textStrokeState_={});var c=s.getLineDash(),l=s.getLineDashOffset(),u=s.getWidth(),h=s.getMiterLimit();o.lineCap=s.getLineCap()||"round",o.lineDash=c?c.slice():Qo,o.lineDashOffset=void 0===l?0:l,o.lineJoin=s.getLineJoin()||"round",o.lineWidth=void 0===u?1:u,o.miterLimit=void 0===h?10:h,o.strokeStyle=Xo(s.getColor()||Jo)}else o=this.textStrokeState_=null;i=this.textState_;var d=e.getFont()||"10px sans-serif";ra(d);var p=e.getScale();i.overflow=e.getOverflow(),i.font=d,i.maxAngle=e.getMaxAngle(),i.placement=e.getPlacement(),i.textAlign=e.getTextAlign(),i.textBaseline=e.getTextBaseline()||"middle",i.backgroundFill=e.getBackgroundFill(),i.backgroundStroke=e.getBackgroundStroke(),i.padding=e.getPadding()||$o,i.scale=void 0===p?1:p;var m=e.getOffsetX(),f=e.getOffsetY(),g=e.getRotateWithView(),S=e.getRotation();this.text_=e.getText()||"",this.textOffsetX_=void 0===m?0:m,this.textOffsetY_=void 0===f?0:f,this.textRotateWithView_=void 0!==g&&g,this.textRotation_=void 0===S?0:S,this.strokeKey_=o?("string"==typeof o.strokeStyle?o.strokeStyle:r(o.strokeStyle))+o.lineCap+o.lineDashOffset+"|"+o.lineWidth+o.lineJoin+o.miterLimit+"["+o.lineDash.join()+"]":"",this.textKey_=i.font+i.scale+(i.textAlign||"?"),this.fillKey_=n?"string"==typeof n.fillStyle?n.fillStyle:"|"+r(n.fillStyle):""}else this.text_=""},t}(ac)},pc=function(e){function t(t,i,n,r,o,a,s){e.call(this),this.declutterTree_=a,this.declutterGroup_=null,this.tolerance_=t,this.maxExtent_=i,this.overlaps_=o,this.pixelRatio_=r,this.resolution_=n,this.renderBuffer_=s,this.replaysByZIndex_={},this.hitDetectionContext_=nr(1,1),this.hitDetectionTransform_=[1,0,0,1,0,0]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addDeclutter=function(e){var t=null;return this.declutterTree_&&(e?(t=this.declutterGroup_)[4]++:(t=this.declutterGroup_=[1/0,1/0,-1/0,-1/0]).push(1)),t},t.prototype.clip=function(e,t){var i=this.getClipCoords(t);e.beginPath(),e.moveTo(i[0],i[1]),e.lineTo(i[2],i[3]),e.lineTo(i[4],i[5]),e.lineTo(i[6],i[7]),e.clip()},t.prototype.hasReplays=function(e){for(var t in this.replaysByZIndex_)for(var i=this.replaysByZIndex_[t],n=0,r=e.length;n<r;++n)if(e[n]in i)return!0;return!1},t.prototype.finish=function(){for(var e in this.replaysByZIndex_){var t=this.replaysByZIndex_[e];for(var i in t)t[i].finish()}},t.prototype.forEachFeatureAtCoordinate=function(e,t,i,n,r,o,a){var s,c=2*(n=Math.round(n))+1,l=pn(this.hitDetectionTransform_,n+.5,n+.5,1/t,-1/t,-i,-e[0],-e[1]),u=this.hitDetectionContext_;u.canvas.width!==c||u.canvas.height!==c?(u.canvas.width=c,u.canvas.height=c):u.clearRect(0,0,c,c),void 0!==this.renderBuffer_&&(ii(s=[1/0,1/0,-1/0,-1/0],e),Ut(s,t*(this.renderBuffer_+n),s));var h,d,p=function(e){if(void 0!==mc[e])return mc[e];for(var t=2*e+1,i=new Array(t),n=0;n<t;n++)i[n]=new Array(t);for(var r=e,o=0,a=0;r>=o;)fc(i,e+r,e+o),fc(i,e+o,e+r),fc(i,e-o,e+r),fc(i,e-r,e+o),fc(i,e-r,e-o),fc(i,e-o,e-r),fc(i,e+o,e-r),fc(i,e+r,e-o),2*((a+=1+2*++o)-r)+1>0&&(a+=1-2*(r-=1));return mc[e]=i,i}(n);function m(e){for(var t=u.getImageData(0,0,c,c).data,i=0;i<c;i++)for(var n=0;n<c;n++)if(p[i][n]&&t[4*(n*c+i)+3]>0){var r=void 0;return(!h||d!=Ns.IMAGE&&d!=Ns.TEXT||-1!==h.indexOf(e))&&(r=o(e)),r||void u.clearRect(0,0,c,c)}}this.declutterTree_&&(h=this.declutterTree_.all().map((function(e){return e.value})));var f,g,S,y,v,_=Object.keys(this.replaysByZIndex_).map(Number);for(_.sort(Ve),f=_.length-1;f>=0;--f){var C=_[f].toString();for(S=this.replaysByZIndex_[C],g=ic.length-1;g>=0;--g)if(void 0!==(y=S[d=ic[g]]))if(!a||d!=Ns.IMAGE&&d!=Ns.TEXT){if(v=y.replayHitDetection(u,l,i,r,m,s))return v}else{var T=a[C];T?T.push(y,l.slice(0)):a[C]=[y,l.slice(0)]}}},t.prototype.getClipCoords=function(e){var t=this.maxExtent_,i=t[0],n=t[1],r=t[2],o=t[3],a=[i,n,i,o,r,o,r,n];return Ti(a,0,8,2,e,a),a},t.prototype.getReplay=function(e,t){var i=void 0!==e?e.toString():"0",n=this.replaysByZIndex_[i];void 0===n&&(n={},this.replaysByZIndex_[i]=n);var r=n[t];return void 0===r&&(r=new(0,dc[t])(this.tolerance_,this.maxExtent_,this.resolution_,this.pixelRatio_,this.overlaps_,this.declutterTree_),n[t]=r),r},t.prototype.getReplays=function(){return this.replaysByZIndex_},t.prototype.isEmpty=function(){return d(this.replaysByZIndex_)},t.prototype.replay=function(e,t,i,n,r,o,a){var s=Object.keys(this.replaysByZIndex_).map(Number);s.sort(Ve),e.save(),this.clip(e,t);var c,l,u,h,d,p,m=o||ic;for(c=0,l=s.length;c<l;++c){var f=s[c].toString();for(d=this.replaysByZIndex_[f],u=0,h=m.length;u<h;++u){var g=m[u];if(p=d[g],void 0!==p)if(!a||g!=Ns.IMAGE&&g!=Ns.TEXT)p.replay(e,t,i,n,r);else{var S=a[f];S?S.push(p,t.slice(0)):a[f]=[p,t.slice(0)]}}}e.restore()},t}(ws),mc={0:[[!0]]};function fc(e,t,i){var n,r=Math.floor(e.length/2);if(t>=r)for(n=r;n<t;n++)e[n][i]=!0;else if(t<r)for(n=t+1;n<r;n++)e[n][i]=!0}var gc=.5,Sc={Point:function(e,t,i,n){var r=i.getImage();if(r){if(r.getImageState()!=Yo.LOADED)return;var o=e.getReplay(i.getZIndex(),Ns.IMAGE);o.setImageStyle(r,e.addDeclutter(!1)),o.drawPoint(t,n)}var a=i.getText();if(a){var s=e.getReplay(i.getZIndex(),Ns.TEXT);s.setTextStyle(a,e.addDeclutter(!!r)),s.drawText(t,n)}},LineString:function(e,t,i,n){var r=i.getStroke();if(r){var o=e.getReplay(i.getZIndex(),Ns.LINE_STRING);o.setFillStrokeStyle(null,r),o.drawLineString(t,n)}var a=i.getText();if(a){var s=e.getReplay(i.getZIndex(),Ns.TEXT);s.setTextStyle(a,e.addDeclutter(!1)),s.drawText(t,n)}},Polygon:function(e,t,i,n){var r=i.getFill(),o=i.getStroke();if(r||o){var a=e.getReplay(i.getZIndex(),Ns.POLYGON);a.setFillStrokeStyle(r,o),a.drawPolygon(t,n)}var s=i.getText();if(s){var c=e.getReplay(i.getZIndex(),Ns.TEXT);c.setTextStyle(s,e.addDeclutter(!1)),c.drawText(t,n)}},MultiPoint:function(e,t,i,n){var r=i.getImage();if(r){if(r.getImageState()!=Yo.LOADED)return;var o=e.getReplay(i.getZIndex(),Ns.IMAGE);o.setImageStyle(r,e.addDeclutter(!1)),o.drawMultiPoint(t,n)}var a=i.getText();if(a){var s=e.getReplay(i.getZIndex(),Ns.TEXT);s.setTextStyle(a,e.addDeclutter(!!r)),s.drawText(t,n)}},MultiLineString:function(e,t,i,n){var r=i.getStroke();if(r){var o=e.getReplay(i.getZIndex(),Ns.LINE_STRING);o.setFillStrokeStyle(null,r),o.drawMultiLineString(t,n)}var a=i.getText();if(a){var s=e.getReplay(i.getZIndex(),Ns.TEXT);s.setTextStyle(a,e.addDeclutter(!1)),s.drawText(t,n)}},MultiPolygon:function(e,t,i,n){var r=i.getFill(),o=i.getStroke();if(o||r){var a=e.getReplay(i.getZIndex(),Ns.POLYGON);a.setFillStrokeStyle(r,o),a.drawMultiPolygon(t,n)}var s=i.getText();if(s){var c=e.getReplay(i.getZIndex(),Ns.TEXT);c.setTextStyle(s,e.addDeclutter(!1)),c.drawText(t,n)}},GeometryCollection:function(e,t,i,n){var r,o,a=t.getGeometriesArray();for(r=0,o=a.length;r<o;++r)(0,Sc[a[r].getType()])(e,a[r],i,n)},Circle:function(e,t,i,n){var r=i.getFill(),o=i.getStroke();if(r||o){var a=e.getReplay(i.getZIndex(),Ns.CIRCLE);a.setFillStrokeStyle(r,o),a.drawCircle(t,n)}var s=i.getText();if(s){var c=e.getReplay(i.getZIndex(),Ns.TEXT);c.setTextStyle(s,e.addDeclutter(!1)),c.drawText(t,n)}}};function yc(e,t){return parseInt(r(e),10)-parseInt(r(t),10)}function vc(e,t){var i=_c(e,t);return i*i}function _c(e,t){return gc*e/t}function Cc(e,t,i,n,r,o){var a=!1,s=i.getImage();if(s){var c=s.getImageState();c==Yo.LOADED||c==Yo.ERROR?s.unlistenImageChange(r,o):(c==Yo.IDLE&&s.load(),c=s.getImageState(),s.listenImageChange(r,o),a=!0)}return function(e,t,i,n){var r=i.getGeometryFunction()(t);if(r){var o=r.getSimplifiedGeometry(n);i.getRenderer()?function e(t,i,n,r){if(i.getType()!=_i.GEOMETRY_COLLECTION){var o=t.getReplay(n.getZIndex(),Ns.DEFAULT);o.drawCustom(i,r,n.getRenderer())}else for(var a=i.getGeometries(),s=0,c=a.length;s<c;++s)e(t,a[s],n,r)}(e,o,i,t):(0,Sc[o.getType()])(e,o,i,t)}}(e,t,i,n),a}var Tc=function(e){function t(t){e.call(this,t),this.declutterTree_=t.getDeclutter()?Ma(9,void 0):null,this.dirty_=!1,this.renderedRevision_=-1,this.renderedResolution_=NaN,this.renderedExtent_=[1/0,1/0,-1/0,-1/0],this.renderedRenderOrder_=null,this.replayGroup_=null,this.replayGroupChanged=!0,this.context=nr(),S(ea,E.CLEAR,this.handleFontsChanged_,this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.disposeInternal=function(){v(ea,E.CLEAR,this.handleFontsChanged_,this),e.prototype.disposeInternal.call(this)},t.prototype.compose=function(e,t,i){var n=t.extent,r=t.pixelRatio,o=i.managed?t.skippedFeatureUids:{},a=t.viewState,s=a.projection,c=a.rotation,l=s.getExtent(),u=this.getLayer().getSource(),h=this.getTransform(t,0),d=i.extent,p=void 0!==d;p&&this.clip(e,t,d);var m=this.replayGroup_;if(m&&!m.isEmpty()){this.declutterTree_&&this.declutterTree_.clear();var f,g=this.getLayer(),S=0,y=0,v=1!==i.opacity,_=g.hasListener(rt);if(v||_){var C=e.canvas.width,T=e.canvas.height;if(c){var D=Math.round(Math.sqrt(C*C+T*T));S=(D-C)/2,y=(D-T)/2,C=T=D}this.context.canvas.width=C,this.context.canvas.height=T,f=this.context}else f=e;var A=f.globalAlpha;v||(f.globalAlpha=i.opacity),f!=e&&f.translate(S,y);var I=t.viewHints,P=!(I[Tt]||I[Dt]),R=t.size[0]*r,x=t.size[1]*r;if(ua(f,-c,R/2,x/2),m.replay(f,h,c,o,P),u.getWrapX()&&s.canWrapX()&&!jt(l,n)){for(var E,b=n[0],O=gi(l),q=0;b<l[0];)E=O*--q,h=this.getTransform(t,E),m.replay(f,h,c,o,P),b+=O;for(q=0,b=n[2];b>l[2];)E=O*++q,h=this.getTransform(t,E),m.replay(f,h,c,o,P),b-=O}if(ua(f,c,R/2,x/2),_&&this.dispatchRenderEvent(f,t,h),f!=e){if(v){var F=e.globalAlpha;e.globalAlpha=i.opacity,e.drawImage(f.canvas,-S,-y),e.globalAlpha=F}else e.drawImage(f.canvas,-S,-y);f.translate(-S,-y)}v||(f.globalAlpha=A)}p&&e.restore()},t.prototype.composeFrame=function(e,t,i){var n=this.getTransform(e,0);this.preCompose(i,e,n),this.compose(i,e,t),this.postCompose(i,e,t,n)},t.prototype.forEachFeatureAtCoordinate=function(e,t,i,n,o){if(this.replayGroup_){var a=t.viewState.resolution,s=t.viewState.rotation,c=this.getLayer(),l={};return this.replayGroup_.forEachFeatureAtCoordinate(e,a,s,i,{},(function(e){var t=r(e);if(!(t in l))return l[t]=!0,n.call(o,e,c)}),null)}},t.prototype.handleFontsChanged_=function(e){var t=this.getLayer();t.getVisible()&&this.replayGroup_&&t.changed()},t.prototype.handleStyleImageChange_=function(e){this.renderIfReadyAndVisible()},t.prototype.prepareFrame=function(e,t){var i=this.getLayer(),n=i.getSource(),r=e.viewHints[Tt],o=e.viewHints[Dt],a=i.getUpdateWhileAnimating(),s=i.getUpdateWhileInteracting();if(!this.dirty_&&!a&&r||!s&&o)return!0;var c=e.extent,l=e.viewState,u=l.projection,h=l.resolution,d=e.pixelRatio,p=i.getRevision(),m=i.getRenderBuffer(),f=i.getRenderOrder();void 0===f&&(f=yc);var g=Ut(c,m*h),S=l.projection.getExtent();if(n.getWrapX()&&l.projection.canWrapX()&&!jt(S,e.extent)){var y=gi(S),v=Math.max(gi(g)/2,y);g[0]=S[0]-v,g[2]=S[2]+v}if(!this.dirty_&&this.renderedResolution_==h&&this.renderedRevision_==p&&this.renderedRenderOrder_==f&&jt(this.renderedExtent_,g))return this.replayGroupChanged=!1,!0;this.replayGroup_=null,this.dirty_=!1;var _=new pc(_c(h,d),g,h,d,n.getOverlaps(),this.declutterTree_,i.getRenderBuffer());n.loadFeatures(g,h,u);var C=function(e){var t,n=e.getStyleFunction()||i.getStyleFunction();if(n&&(t=n(e,h)),t){var r=this.renderFeature(e,h,d,t,_);this.dirty_=this.dirty_||r}}.bind(this);if(f){var T=[];n.forEachFeatureInExtent(g,(function(e){T.push(e)})),T.sort(f);for(var D=0,A=T.length;D<A;++D)C(T[D])}else n.forEachFeatureInExtent(g,C);return _.finish(),this.renderedResolution_=h,this.renderedRevision_=p,this.renderedRenderOrder_=f,this.renderedExtent_=g,this.replayGroup_=_,this.replayGroupChanged=!0,!0},t.prototype.renderFeature=function(e,t,i,n,r){if(!n)return!1;var o=!1;if(Array.isArray(n))for(var a=0,s=n.length;a<s;++a)o=Cc(r,e,n[a],vc(t,i),this.handleStyleImageChange_,this)||o;else o=Cc(r,e,n,vc(t,i),this.handleStyleImageChange_,this);return o},t}(bs);Tc.handles=function(e){return e.getType()===Bo.VECTOR},Tc.create=function(e,t){return new Tc(t)};var Dc={IMAGE:"image",HYBRID:"hybrid",VECTOR:"vector"},Ac={image:[Ns.POLYGON,Ns.CIRCLE,Ns.LINE_STRING,Ns.IMAGE,Ns.TEXT],hybrid:[Ns.POLYGON,Ns.LINE_STRING]},Ic={image:[Ns.DEFAULT],hybrid:[Ns.IMAGE,Ns.TEXT,Ns.DEFAULT],vector:ic},Pc=function(e){function t(t){e.call(this,t,!0),this.declutterTree_=t.getDeclutter()?Ma(9,void 0):null,this.dirty_=!1,this.renderedLayerRevision_,this.tmpTransform_=[1,0,0,1,0,0];var i=t.getRenderMode();this.zDirection=i===Dc.VECTOR?1:0,i!==Dc.VECTOR&&(this.context=nr()),S(ea,E.CLEAR,this.handleFontsChanged_,this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.disposeInternal=function(){v(ea,E.CLEAR,this.handleFontsChanged_,this),e.prototype.disposeInternal.call(this)},t.prototype.getTile=function(t,i,n,r,o){var a=e.prototype.getTile.call(this,t,i,n,r,o);return a.getState()===at.LOADED&&(this.createReplayGroup_(a,r,o),this.context&&this.renderTileImage_(a,r,o)),a},t.prototype.getTileImage=function(e){var t=this.getLayer();return(e.getImage(t))},t.prototype.prepareFrame=function(t,i){var n=this.getLayer().getRevision();return this.renderedLayerRevision_!=n&&(this.renderedTiles.length=0),this.renderedLayerRevision_=n,e.prototype.prepareFrame.call(this,t,i)},t.prototype.createReplayGroup_=function(e,t,i){var n=this,r=this.getLayer(),o=r.getRevision(),a=r.getRenderOrder()||null,s=e.getReplayState(r);if(s.dirty||s.renderedRevision!=o||s.renderedRenderOrder!=a){for(var c=r.getSource(),l=c.getTileGrid(),u=c.getTileGridForProjection(i).getResolution(e.tileCoord[0]),h=e.extent,d=function(o,d){var p=e.getTile(e.tileKeys[o]);if(p.getState()==at.LOADED){var m=p.tileCoord,f=l.getTileCoordExtent(m),g=pi(h,f),S=ei(f,g)?null:Ut(g,r.getRenderBuffer()*u,n.tmpExtent),y=p.getProjection(),v=!1;en(i,y)||(v=!0,p.setProjection(i)),s.dirty=!1;var _=new pc(0,g,u,t,c.getOverlaps(),n.declutterTree_,r.getRenderBuffer()),C=vc(u,t),T=function(e){var t,i=e.getStyleFunction()||r.getStyleFunction();if(i&&(t=i(e,u)),t){var n=this.renderFeature(e,C,t,_);this.dirty_=this.dirty_||n,s.dirty=s.dirty||n}},D=p.getFeatures();a&&a!==s.renderedRenderOrder&&D.sort(a);for(var A=0,I=D.length;A<I;++A){var P=D[A];v&&(y.getUnits()==Pi.TILE_PIXELS&&(y.setWorldExtent(f),y.setExtent(p.getExtent())),P.getGeometry().transform(y,i)),S&&!Si(S,P.getGeometry().getExtent())||T.call(n,P)}_.finish(),p.setReplayGroup(r,e.tileCoord.toString(),_)}},p=0,m=e.tileKeys.length;p<m;++p)d(p);s.renderedRevision=o,s.renderedRenderOrder=a}},t.prototype.forEachFeatureAtCoordinate=function(e,t,i,n,o){var a=t.viewState.resolution,s=t.viewState.rotation;i=null==i?0:i;var c,l,u,h,d=this.getLayer(),p={},m=this.renderedTiles;for(u=0,h=m.length;u<h;++u){var f=m[u];if(Ht(c=Ut(f.extent,i*a,c),e))for(var g=0,S=f.tileKeys.length;g<S;++g){var y=f.getTile(f.tileKeys[g]);if(y.getState()==at.LOADED){var v=y.getReplayGroup(d,f.tileCoord.toString());l=l||v.forEachFeatureAtCoordinate(e,a,s,i,{},(function(e){var t=r(e);if(!(t in p))return p[t]=!0,n.call(o,e,d)}),null)}}}return l},t.prototype.getReplayTransform_=function(e,t){var i=this.getLayer().getSource().getTileGrid(),n=e.tileCoord,r=i.getResolution(n[0]),o=t.viewState,a=t.pixelRatio,s=o.resolution/a,c=i.getTileCoordExtent(n,this.tmpExtent),l=o.center,u=mi(c),h=t.size,d=Math.round(a*h[0]/2),p=Math.round(a*h[1]/2);return pn(this.tmpTransform_,d,p,r/s,r/s,o.rotation,(u[0]-l[0])/r,(l[1]-u[1])/r)},t.prototype.handleFontsChanged_=function(e){var t=this.getLayer();t.getVisible()&&void 0!==this.renderedLayerRevision_&&t.changed()},t.prototype.handleStyleImageChange_=function(e){this.renderIfReadyAndVisible()},t.prototype.postCompose=function(t,i,n){var r=this.getLayer(),o=r.getRenderMode();if(o!=Dc.IMAGE){var a,s,c=r.getDeclutter()?{}:null,l=r.getSource(),u=Ic[o],h=i.pixelRatio,d=i.viewState.rotation,p=i.size;d&&ua(t,-d,a=Math.round(h*p[0]/2),s=Math.round(h*p[1]/2)),c&&this.declutterTree_.clear();for(var m=i.viewHints,f=!(m[Tt]||m[Dt]),g=this.renderedTiles,S=l.getTileGridForProjection(i.viewState.projection),y=[],v=[],_=g.length-1;_>=0;--_){var C=g[_];if(C.getState()!=at.ABORT)for(var T=C.tileCoord,D=S.getTileCoordExtent(T,this.tmpExtent)[0]-C.extent[0],A=void 0,I=0,P=C.tileKeys.length;I<P;++I){var R=C.getTile(C.tileKeys[I]);if(R.getState()==at.LOADED){var x=R.getReplayGroup(r,T.toString());if(x&&x.hasReplays(u)){A||(A=this.getTransform(i,D));var E=R.tileCoord[0],b=x.getClipCoords(A);t.save(),t.globalAlpha=n.opacity;for(var O=0,q=y.length;O<q;++O){var F=y[O];E<v[O]&&(t.beginPath(),t.moveTo(b[0],b[1]),t.lineTo(b[2],b[3]),t.lineTo(b[4],b[5]),t.lineTo(b[6],b[7]),t.moveTo(F[6],F[7]),t.lineTo(F[4],F[5]),t.lineTo(F[2],F[3]),t.lineTo(F[0],F[1]),t.clip())}x.replay(t,A,d,{},f,u,c),t.restore(),y.push(b),v.push(E)}}}}c&&function(e,t,i,n){for(var r=Object.keys(e).map(Number).sort(Ve),o={},a=0,s=r.length;a<s;++a)for(var c=e[r[a].toString()],l=0,u=c.length;l<u;){var h=c[l++],d=c[l++];h.replay(t,d,i,o,n)}}(c,t,d,f),d&&ua(t,d,a,s)}e.prototype.postCompose.call(this,t,i,n)},t.prototype.renderFeature=function(e,t,i,n){if(!i)return!1;var r=!1;if(Array.isArray(i))for(var o=0,a=i.length;o<a;++o)r=Cc(n,e,i[o],t,this.handleStyleImageChange_,this)||r;else r=Cc(n,e,i,t,this.handleStyleImageChange_,this);return r},t.prototype.renderTileImage_=function(e,t,i){var n=this.getLayer(),r=e.getReplayState(n),o=n.getRevision(),a=Ac[n.getRenderMode()];if(a&&r.renderedTileRevision!==o){r.renderedTileRevision=o;var s=e.wrappedTileCoord,c=s[0],l=n.getSource(),u=l.getTileGridForProjection(i),h=u.getResolution(c),d=e.getContext(n),p=l.getTilePixelSize(c,t,i);d.canvas.width=p[0],d.canvas.height=p[1];for(var m=u.getTileCoordExtent(s,this.tmpExtent),f=0,g=e.tileKeys.length;f<g;++f){var S=e.getTile(e.tileKeys[f]);if(S.getState()==at.LOADED){var y=t/h,v=on(this.tmpTransform_);hn(v,y,-y),dn(v,-m[0],-m[3]),S.getReplayGroup(n,e.tileCoord.toString()).replay(d,v,0,{},!0,a)}}}},t}(Ls);Pc.handles=function(e){return e.getType()===Bo.VECTOR_TILE},Pc.create=function(e,t){return new Pc(t)};var Rc=function(e){function t(t){(t=l({},t)).controls||(t.controls=Nr()),t.interactions||(t.interactions=fs()),e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createRenderer=function(){var e=new xs(this);return e.registerLayerRenderers([qs,Ls,Tc,Pc]),e},t}(fr),xc={BOTTOM_LEFT:"bottom-left",BOTTOM_CENTER:"bottom-center",BOTTOM_RIGHT:"bottom-right",CENTER_LEFT:"center-left",CENTER_CENTER:"center-center",CENTER_RIGHT:"center-right",TOP_LEFT:"top-left",TOP_CENTER:"top-center",TOP_RIGHT:"top-right"},Ec={ELEMENT:"element",MAP:"map",OFFSET:"offset",POSITION:"position",POSITIONING:"positioning"},bc=function(e){function t(t){e.call(this),this.options=t,this.id=t.id,this.insertFirst=void 0===t.insertFirst||t.insertFirst,this.stopEvent=void 0===t.stopEvent||t.stopEvent,this.element=document.createElement("div"),this.element.className=void 0!==t.className?t.className:"ol-overlay-container "+yr,this.element.style.position="absolute",this.autoPan=void 0!==t.autoPan&&t.autoPan,this.autoPanAnimation=t.autoPanAnimation||{},this.autoPanMargin=void 0!==t.autoPanMargin?t.autoPanMargin:20,this.rendered={bottom_:"",left_:"",right_:"",top_:"",visible:!0},this.mapPostrenderListenerKey=null,S(this,M(Ec.ELEMENT),this.handleElementChanged,this),S(this,M(Ec.MAP),this.handleMapChanged,this),S(this,M(Ec.OFFSET),this.handleOffsetChanged,this),S(this,M(Ec.POSITION),this.handlePositionChanged,this),S(this,M(Ec.POSITIONING),this.handlePositioningChanged,this),void 0!==t.element&&this.setElement(t.element),this.setOffset(void 0!==t.offset?t.offset:[0,0]),this.setPositioning(void 0!==t.positioning?t.positioning:xc.TOP_LEFT),void 0!==t.position&&this.setPosition(t.position)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getElement=function(){return this.get(Ec.ELEMENT)},t.prototype.getId=function(){return this.id},t.prototype.getMap=function(){return this.get(Ec.MAP)},t.prototype.getOffset=function(){return this.get(Ec.OFFSET)},t.prototype.getPosition=function(){return this.get(Ec.POSITION)},t.prototype.getPositioning=function(){return this.get(Ec.POSITIONING)},t.prototype.handleElementChanged=function(){cr(this.element);var e=this.getElement();e&&this.element.appendChild(e)},t.prototype.handleMapChanged=function(){this.mapPostrenderListenerKey&&(sr(this.element),_(this.mapPostrenderListenerKey),this.mapPostrenderListenerKey=null);var e=this.getMap();if(e){this.mapPostrenderListenerKey=S(e,et.POSTRENDER,this.render,this),this.updatePixelPosition();var t=this.stopEvent?e.getOverlayContainerStopEvent():e.getOverlayContainer();this.insertFirst?t.insertBefore(this.element,t.childNodes[0]||null):t.appendChild(this.element)}},t.prototype.render=function(){this.updatePixelPosition()},t.prototype.handleOffsetChanged=function(){this.updatePixelPosition()},t.prototype.handlePositionChanged=function(){this.updatePixelPosition(),this.get(Ec.POSITION)&&this.autoPan&&this.panIntoView()},t.prototype.handlePositioningChanged=function(){this.updatePixelPosition()},t.prototype.setElement=function(e){this.set(Ec.ELEMENT,e)},t.prototype.setMap=function(e){this.set(Ec.MAP,e)},t.prototype.setOffset=function(e){this.set(Ec.OFFSET,e)},t.prototype.setPosition=function(e){this.set(Ec.POSITION,e)},t.prototype.panIntoView=function(){var e=this.getMap();if(e&&e.getTargetElement()){var t=this.getRect(e.getTargetElement(),e.getSize()),i=this.getElement(),n=this.getRect(i,[rr(i),or(i)]),r=this.autoPanMargin;if(!jt(t,n)){var o=n[0]-t[0],a=t[2]-n[2],s=n[1]-t[1],c=t[3]-n[3],l=[0,0];if(o<0?l[0]=o-r:a<0&&(l[0]=Math.abs(a)+r),s<0?l[1]=s-r:c<0&&(l[1]=Math.abs(c)+r),0!==l[0]||0!==l[1]){var u=e.getView().getCenter(),h=e.getPixelFromCoordinate(u),d=[h[0]+l[0],h[1]+l[1]];e.getView().animate({center:e.getCoordinateFromPixel(d),duration:this.autoPanAnimation.duration,easing:this.autoPanAnimation.easing})}}}},t.prototype.getRect=function(e,t){var i=e.getBoundingClientRect(),n=i.left+window.pageXOffset,r=i.top+window.pageYOffset;return[n,r,n+t[0],r+t[1]]},t.prototype.setPositioning=function(e){this.set(Ec.POSITIONING,e)},t.prototype.setVisible=function(e){this.rendered.visible!==e&&(this.element.style.display=e?"":"none",this.rendered.visible=e)},t.prototype.updatePixelPosition=function(){var e=this.getMap(),t=this.getPosition();if(e&&e.isRendered()&&t){var i=e.getPixelFromCoordinate(t),n=e.getSize();this.updateRenderedPosition(i,n)}else this.setVisible(!1)},t.prototype.updateRenderedPosition=function(e,t){var i=this.element.style,n=this.getOffset(),r=this.getPositioning();this.setVisible(!0);var o=n[0],a=n[1];if(r==xc.BOTTOM_RIGHT||r==xc.CENTER_RIGHT||r==xc.TOP_RIGHT){""!==this.rendered.left_&&(this.rendered.left_=i.left="");var s=Math.round(t[0]-e[0]-o)+"px";this.rendered.right_!=s&&(this.rendered.right_=i.right=s)}else{""!==this.rendered.right_&&(this.rendered.right_=i.right=""),r!=xc.BOTTOM_CENTER&&r!=xc.CENTER_CENTER&&r!=xc.TOP_CENTER||(o-=this.element.offsetWidth/2);var c=Math.round(e[0]+o)+"px";this.rendered.left_!=c&&(this.rendered.left_=i.left=c)}if(r==xc.BOTTOM_LEFT||r==xc.BOTTOM_CENTER||r==xc.BOTTOM_RIGHT){""!==this.rendered.top_&&(this.rendered.top_=i.top="");var l=Math.round(t[1]-e[1]-a)+"px";this.rendered.bottom_!=l&&(this.rendered.bottom_=i.bottom=l)}else{""!==this.rendered.bottom_&&(this.rendered.bottom_=i.bottom=""),r!=xc.CENTER_LEFT&&r!=xc.CENTER_CENTER&&r!=xc.CENTER_RIGHT||(a-=this.element.offsetHeight/2);var u=Math.round(e[1]+a)+"px";this.rendered.top_!=u&&(this.rendered.top_=i.top=u)}},t.prototype.getOptions=function(){return this.options},t}(q),Oc=function(e){function t(t){var i=t||{};e.call(this,{element:document.createElement("div"),render:i.render||qc,target:i.target}),this.collapsed_=void 0===i.collapsed||i.collapsed,this.collapsible_=void 0===i.collapsible||i.collapsible,this.collapsible_||(this.collapsed_=!1);var n=void 0!==i.className?i.className:"ol-overviewmap",r=void 0!==i.tipLabel?i.tipLabel:"Overview map",o=void 0!==i.collapseLabel?i.collapseLabel:"«";"string"==typeof o?(this.collapseLabel_=document.createElement("span"),this.collapseLabel_.textContent=o):this.collapseLabel_=o;var a=void 0!==i.label?i.label:"»";"string"==typeof a?(this.label_=document.createElement("span"),this.label_.textContent=a):this.label_=a;var s=this.collapsible_&&!this.collapsed_?this.collapseLabel_:this.label_,c=document.createElement("button");c.setAttribute("type","button"),c.title=r,c.appendChild(s),S(c,E.CLICK,this.handleClick_,this),this.ovmapDiv_=document.createElement("div"),this.ovmapDiv_.className="ol-overviewmap-map",this.ovmap_=new Rc({controls:new V,interactions:new V,view:i.view});var l=this.ovmap_;i.layers&&i.layers.forEach(function(e){l.addLayer(e)}.bind(this));var u=document.createElement("div");u.className="ol-overviewmap-box",u.style.boxSizing="border-box",this.boxOverlay_=new bc({position:[0,0],positioning:xc.BOTTOM_LEFT,element:u}),this.ovmap_.addOverlay(this.boxOverlay_);var h=n+" "+vr+" "+Cr+(this.collapsed_&&this.collapsible_?" "+Tr:"")+(this.collapsible_?"":" ol-uncollapsible"),d=this.element;d.className=h,d.appendChild(this.ovmapDiv_),d.appendChild(c);var p=this,m=this.boxOverlay_,f=this.boxOverlay_.getElement(),g=function(e){var t,i={clientX:(t=e).clientX-f.offsetWidth/2,clientY:t.clientY+f.offsetHeight/2},n=l.getEventCoordinate(i);m.setPosition(n)},y=function(e){var t=l.getEventCoordinate(e);p.getMap().getView().setCenter(t),window.removeEventListener("mousemove",g),window.removeEventListener("mouseup",y)};f.addEventListener("mousedown",(function(){window.addEventListener("mousemove",g),window.addEventListener("mouseup",y)}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setMap=function(t){var i=this.getMap();if(t!==i){if(i){var n=i.getView();n&&this.unbindView_(n),this.ovmap_.setTarget(null)}if(e.prototype.setMap.call(this,t),t){this.ovmap_.setTarget(this.ovmapDiv_),this.listenerKeys.push(S(t,c,this.handleMapPropertyChange_,this)),0===this.ovmap_.getLayers().getLength()&&this.ovmap_.setLayerGroup(t.getLayerGroup());var r=t.getView();r&&(this.bindView_(r),r.isDef()&&(this.ovmap_.updateSize(),this.resetExtent_()))}}},t.prototype.handleMapPropertyChange_=function(e){if(e.key===tt.VIEW){var t=e.oldValue;t&&this.unbindView_(t);var i=this.getMap().getView();this.bindView_(i)}},t.prototype.bindView_=function(e){S(e,M(Pt),this.handleRotationChanged_,this)},t.prototype.unbindView_=function(e){v(e,M(Pt),this.handleRotationChanged_,this)},t.prototype.handleRotationChanged_=function(){this.ovmap_.getView().setRotation(this.getMap().getView().getRotation())},t.prototype.validateExtent_=function(){var e=this.getMap(),t=this.ovmap_;if(e.isRendered()&&t.isRendered()){var i=e.getSize(),n=e.getView().calculateExtent(i),r=t.getSize(),o=t.getView().calculateExtent(r),a=t.getPixelFromCoordinate(mi(n)),s=t.getPixelFromCoordinate(ci(n)),c=Math.abs(a[0]-s[0]),l=Math.abs(a[1]-s[1]),u=r[0],h=r[1];c<.1*u||l<.1*h||c>.75*u||l>.75*h?this.resetExtent_():jt(o,n)||this.recenter_()}},t.prototype.resetExtent_=function(){var e=this.getMap(),t=this.ovmap_,i=e.getSize(),n=e.getView().calculateExtent(i),r=t.getView(),o=Math.log(7.5)/Math.LN2;vi(n,1/(.1*Math.pow(2,o/2))),r.fit(n)},t.prototype.recenter_=function(){var e=this.getMap(),t=this.ovmap_,i=e.getView();t.getView().setCenter(i.getCenter())},t.prototype.updateBox_=function(){var e=this.getMap(),t=this.ovmap_;if(e.isRendered()&&t.isRendered()){var i=e.getSize(),n=e.getView(),r=t.getView(),o=n.getRotation(),a=this.boxOverlay_,s=this.boxOverlay_.getElement(),c=n.calculateExtent(i),l=r.getResolution(),u=si(c),h=fi(c),d=this.calculateCoordinateRotate_(o,u);a.setPosition(d),s&&(s.style.width=Math.abs((u[0]-h[0])/l)+"px",s.style.height=Math.abs((h[1]-u[1])/l)+"px")}},t.prototype.calculateCoordinateRotate_=function(e,t){var i,n=this.getMap().getView().getCenter();return n&&(bt(i=[t[0]-n[0],t[1]-n[1]],e),Rt(i,n)),i},t.prototype.handleClick_=function(e){e.preventDefault(),this.handleToggle_()},t.prototype.handleToggle_=function(){this.element.classList.toggle(Tr),this.collapsed_?ar(this.collapseLabel_,this.label_):ar(this.label_,this.collapseLabel_),this.collapsed_=!this.collapsed_;var e=this.ovmap_;this.collapsed_||e.isRendered()||(e.updateSize(),this.resetExtent_(),y(e,et.POSTRENDER,(function(e){this.updateBox_()}),this))},t.prototype.getCollapsible=function(){return this.collapsible_},t.prototype.setCollapsible=function(e){this.collapsible_!==e&&(this.collapsible_=e,this.element.classList.toggle("ol-uncollapsible"),!e&&this.collapsed_&&this.handleToggle_())},t.prototype.setCollapsed=function(e){this.collapsible_&&this.collapsed_!==e&&this.handleToggle_()},t.prototype.getCollapsed=function(){return this.collapsed_},t.prototype.getOverviewMap=function(){return this.ovmap_},t}(gr);function qc(e){this.validateExtent_(),this.updateBox_()}var Fc="units",Mc={DEGREES:"degrees",IMPERIAL:"imperial",NAUTICAL:"nautical",METRIC:"metric",US:"us"},Lc=[1,2,5],wc=function(e){function t(t){var i=t||{},n=void 0!==i.className?i.className:"ol-scale-line";e.call(this,{element:document.createElement("div"),render:i.render||Nc,target:i.target}),this.innerElement_=document.createElement("div"),this.innerElement_.className=n+"-inner",this.element.className=n+" "+vr,this.element.appendChild(this.innerElement_),this.viewState_=null,this.minWidth_=void 0!==i.minWidth?i.minWidth:64,this.renderedVisible_=!1,this.renderedWidth_=void 0,this.renderedHTML_="",S(this,M(Fc),this.handleUnitsChanged_,this),this.setUnits(i.units||Mc.METRIC)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getUnits=function(){return this.get(Fc)},t.prototype.handleUnitsChanged_=function(){this.updateElement_()},t.prototype.setUnits=function(e){this.set(Fc,e)},t.prototype.updateElement_=function(){var e=this.viewState_;if(e){var t=e.center,i=e.projection,n=this.getUnits(),r=n==Mc.DEGREES?Pi.DEGREES:Pi.METERS,o=Qi(i,e.resolution,t,r);i.getUnits()!=Pi.DEGREES&&i.getMetersPerUnit()&&r==Pi.METERS&&(o*=i.getMetersPerUnit());var a=this.minWidth_*o,s="";if(n==Mc.DEGREES){var c=Ri[Pi.DEGREES];i.getUnits()==Pi.DEGREES?a*=c:o/=c,a<c/60?(s="″",o*=3600):a<c?(s="′",o*=60):s="°"}else n==Mc.IMPERIAL?a<.9144?(s="in",o/=.0254):a<1609.344?(s="ft",o/=.3048):(s="mi",o/=1609.344):n==Mc.NAUTICAL?(o/=1852,s="nm"):n==Mc.METRIC?a<.001?(s="μm",o*=1e6):a<1?(s="mm",o*=1e3):a<1e3?s="m":(s="km",o/=1e3):n==Mc.US?a<.9144?(s="in",o*=39.37):a<1609.344?(s="ft",o/=.30480061):(s="mi",o/=1609.3472):st(!1,33);for(var l,u,h=3*Math.floor(Math.log(this.minWidth_*o)/Math.log(10));;){if(l=Lc[(h%3+3)%3]*Math.pow(10,Math.floor(h/3)),u=Math.round(l/o),isNaN(u))return this.element.style.display="none",void(this.renderedVisible_=!1);if(u>=this.minWidth_)break;++h}var d=l+" "+s;this.renderedHTML_!=d&&(this.innerElement_.innerHTML=d,this.renderedHTML_=d),this.renderedWidth_!=u&&(this.innerElement_.style.width=u+"px",this.renderedWidth_=u),this.renderedVisible_||(this.element.style.display="",this.renderedVisible_=!0)}else this.renderedVisible_&&(this.element.style.display="none",this.renderedVisible_=!1)},t}(gr);function Nc(e){var t=e.frameState;this.viewState_=t?t.viewState:null,this.updateElement_()}var Bc=function(e){this.source_=e};Bc.prototype.isAnimated=function(){return!1},Bc.prototype.getType=function(){return i()},Bc.prototype.getSource=function(){return this.source_};var Vc=function(e){function t(t){e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getType=function(){return 35632},t}(Bc),kc=function(e){function t(t){e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getType=function(){return 35633},t}(Bc),Gc=new Vc("precision mediump float;\nvarying vec2 v_center;\nvarying vec2 v_offset;\nvarying float v_halfWidth;\nvarying float v_pixelRatio;\n\n\n\nuniform float u_opacity;\nuniform vec4 u_fillColor;\nuniform vec4 u_strokeColor;\nuniform vec2 u_size;\n\nvoid main(void) {\n  vec2 windowCenter = vec2((v_center.x + 1.0) / 2.0 * u_size.x * v_pixelRatio,\n      (v_center.y + 1.0) / 2.0 * u_size.y * v_pixelRatio);\n  vec2 windowOffset = vec2((v_offset.x + 1.0) / 2.0 * u_size.x * v_pixelRatio,\n      (v_offset.y + 1.0) / 2.0 * u_size.y * v_pixelRatio);\n  float radius = length(windowCenter - windowOffset);\n  float dist = length(windowCenter - gl_FragCoord.xy);\n  if (dist > radius + v_halfWidth) {\n    if (u_strokeColor.a == 0.0) {\n      gl_FragColor = u_fillColor;\n    } else {\n      gl_FragColor = u_strokeColor;\n    }\n    gl_FragColor.a = gl_FragColor.a - (dist - (radius + v_halfWidth));\n  } else if (u_fillColor.a == 0.0) {\n    // Hooray, no fill, just stroke. We can use real antialiasing.\n    gl_FragColor = u_strokeColor;\n    if (dist < radius - v_halfWidth) {\n      gl_FragColor.a = gl_FragColor.a - (radius - v_halfWidth - dist);\n    }\n  } else {\n    gl_FragColor = u_fillColor;\n    float strokeDist = radius - v_halfWidth;\n    float antialias = 2.0 * v_pixelRatio;\n    if (dist > strokeDist) {\n      gl_FragColor = u_strokeColor;\n    } else if (dist >= strokeDist - antialias) {\n      float step = smoothstep(strokeDist - antialias, strokeDist, dist);\n      gl_FragColor = mix(u_fillColor, u_strokeColor, step);\n    }\n  }\n  gl_FragColor.a = gl_FragColor.a * u_opacity;\n  if (gl_FragColor.a <= 0.0) {\n    discard;\n  }\n}\n"),Uc=new kc("varying vec2 v_center;\nvarying vec2 v_offset;\nvarying float v_halfWidth;\nvarying float v_pixelRatio;\n\n\nattribute vec2 a_position;\nattribute float a_instruction;\nattribute float a_radius;\n\nuniform mat4 u_projectionMatrix;\nuniform mat4 u_offsetScaleMatrix;\nuniform mat4 u_offsetRotateMatrix;\nuniform float u_lineWidth;\nuniform float u_pixelRatio;\n\nvoid main(void) {\n  mat4 offsetMatrix = u_offsetScaleMatrix * u_offsetRotateMatrix;\n  v_center = vec4(u_projectionMatrix * vec4(a_position, 0.0, 1.0)).xy;\n  v_pixelRatio = u_pixelRatio;\n  float lineWidth = u_lineWidth * u_pixelRatio;\n  v_halfWidth = lineWidth / 2.0;\n  if (lineWidth == 0.0) {\n    lineWidth = 2.0 * u_pixelRatio;\n  }\n  vec2 offset;\n  // Radius with anitaliasing (roughly).\n  float radius = a_radius + 3.0 * u_pixelRatio;\n  // Until we get gl_VertexID in WebGL, we store an instruction.\n  if (a_instruction == 0.0) {\n    // Offsetting the edges of the triangle by lineWidth / 2 is necessary, however\n    // we should also leave some space for the antialiasing, thus we offset by lineWidth.\n    offset = vec2(-1.0, 1.0);\n  } else if (a_instruction == 1.0) {\n    offset = vec2(-1.0, -1.0);\n  } else if (a_instruction == 2.0) {\n    offset = vec2(1.0, -1.0);\n  } else {\n    offset = vec2(1.0, 1.0);\n  }\n\n  gl_Position = u_projectionMatrix * vec4(a_position + offset * radius, 0.0, 1.0) +\n      offsetMatrix * vec4(offset * lineWidth, 0.0, 0.0);\n  v_offset = vec4(u_projectionMatrix * vec4(a_position.x + a_radius, a_position.y,\n      0.0, 1.0)).xy;\n\n  if (distance(v_center, v_offset) > 20000.0) {\n    gl_Position = vec4(v_center, 0.0, 1.0);\n  }\n}\n\n\n"),Wc=function(e,t){this.u_projectionMatrix=e.getUniformLocation(t,"u_projectionMatrix"),this.u_offsetScaleMatrix=e.getUniformLocation(t,"u_offsetScaleMatrix"),this.u_offsetRotateMatrix=e.getUniformLocation(t,"u_offsetRotateMatrix"),this.u_lineWidth=e.getUniformLocation(t,"u_lineWidth"),this.u_pixelRatio=e.getUniformLocation(t,"u_pixelRatio"),this.u_opacity=e.getUniformLocation(t,"u_opacity"),this.u_fillColor=e.getUniformLocation(t,"u_fillColor"),this.u_strokeColor=e.getUniformLocation(t,"u_strokeColor"),this.u_size=e.getUniformLocation(t,"u_size"),this.a_position=e.getAttribLocation(t,"a_position"),this.a_instruction=e.getAttribLocation(t,"a_instruction"),this.a_radius=e.getAttribLocation(t,"a_radius")};function zc(e,t){return e[0]=t[0],e[1]=t[1],e[4]=t[2],e[5]=t[3],e[12]=t[4],e[13]=t[5],e}var Hc=function(e){function t(t,i){e.call(this),this.tolerance=t,this.maxExtent=i,this.origin=li(i),this.projectionMatrix_=[1,0,0,1,0,0],this.offsetRotateMatrix_=[1,0,0,1,0,0],this.offsetScaleMatrix_=[1,0,0,1,0,0],this.tmpMat4_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],this.indices=[],this.indicesBuffer=null,this.startIndices=[],this.startIndicesFeature=[],this.vertices=[],this.verticesBuffer=null,this.lineStringReplay=void 0}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getDeleteResourcesFunction=function(e){return i()},t.prototype.finish=function(e){i()},t.prototype.setUpProgram=function(e,t,n,r){return i()},t.prototype.shutDownProgram=function(e,t){i()},t.prototype.drawReplay=function(e,t,n,r){i()},t.prototype.drawHitDetectionReplayOneByOne=function(e,t,n,r,o){return i()},t.prototype.drawHitDetectionReplay=function(e,t,i,n,r,o){return r?this.drawHitDetectionReplayOneByOne(e,t,i,n,o):this.drawHitDetectionReplayAll(e,t,i,n)},t.prototype.drawHitDetectionReplayAll=function(e,t,i,n){e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),this.drawReplay(e,t,i,!0);var r=n(null);return r||void 0},t.prototype.replay=function(e,t,i,n,r,o,a,s,c,l,u){var h,d,p,m,f,g,S,y,v=e.getGL();this.lineStringReplay&&(h=v.isEnabled(v.STENCIL_TEST),d=v.getParameter(v.STENCIL_FUNC),p=v.getParameter(v.STENCIL_VALUE_MASK),m=v.getParameter(v.STENCIL_REF),f=v.getParameter(v.STENCIL_WRITEMASK),g=v.getParameter(v.STENCIL_FAIL),S=v.getParameter(v.STENCIL_PASS_DEPTH_PASS),y=v.getParameter(v.STENCIL_PASS_DEPTH_FAIL),v.enable(v.STENCIL_TEST),v.clear(v.STENCIL_BUFFER_BIT),v.stencilMask(255),v.stencilFunc(v.ALWAYS,1,255),v.stencilOp(v.KEEP,v.KEEP,v.REPLACE),this.lineStringReplay.replay(e,t,i,n,r,o,a,s,c,l,u),v.stencilMask(0),v.stencilFunc(v.NOTEQUAL,1,255)),e.bindBuffer(34962,this.verticesBuffer),e.bindBuffer(34963,this.indicesBuffer);var _=this.setUpProgram(v,e,r,o),C=on(this.projectionMatrix_);hn(C,2/(i*r[0]),2/(i*r[1])),un(C,-n),dn(C,-(t[0]-this.origin[0]),-(t[1]-this.origin[1]));var T=on(this.offsetScaleMatrix_);hn(T,2/r[0],2/r[1]);var D,A=on(this.offsetRotateMatrix_);return 0!==n&&un(A,-n),v.uniformMatrix4fv(_.u_projectionMatrix,!1,zc(this.tmpMat4_,C)),v.uniformMatrix4fv(_.u_offsetScaleMatrix,!1,zc(this.tmpMat4_,T)),v.uniformMatrix4fv(_.u_offsetRotateMatrix,!1,zc(this.tmpMat4_,A)),v.uniform1f(_.u_opacity,a),void 0===c?this.drawReplay(v,e,s,!1):D=this.drawHitDetectionReplay(v,e,s,c,l,u),this.shutDownProgram(v,_),this.lineStringReplay&&(h||v.disable(v.STENCIL_TEST),v.clear(v.STENCIL_BUFFER_BIT),v.stencilFunc(d,m,p),v.stencilMask(f),v.stencilOp(g,y,S)),D},t.prototype.drawElements=function(e,t,i,n){var r=t.hasOESElementIndexUint?5125:5123,o=n-i,a=i*(t.hasOESElementIndexUint?4:2);e.drawElements(4,o,r,a)},t}(vs),jc=[0,0,0,1],Xc=[],Yc=[0,0,0,1],Kc=Number.EPSILON||2220446049250313e-31,Zc=function(e,t,i,n,r,o){var a=(i-e)*(o-t)-(r-e)*(n-t);return a<=Kc&&a>=-Kc?void 0:a>0},Qc=35044,Jc=function(e,t){this.arr_=void 0!==e?e:[],this.usage_=void 0!==t?t:Qc};Jc.prototype.getArray=function(){return this.arr_},Jc.prototype.getUsage=function(){return this.usage_};var $c=function(e){function t(t,i){e.call(this,t,i),this.defaultLocations_=null,this.styles_=[],this.styleIndices_=[],this.radius_=0,this.state_={fillColor:null,strokeColor:null,lineDash:null,lineDashOffset:void 0,lineWidth:void 0,changed:!1}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawCoordinates_=function(e,t,i,n){var r,o,a=this.vertices.length,s=this.indices.length,c=a/4;for(r=t,o=i;r<o;r+=n)this.vertices[a++]=e[r],this.vertices[a++]=e[r+1],this.vertices[a++]=0,this.vertices[a++]=this.radius_,this.vertices[a++]=e[r],this.vertices[a++]=e[r+1],this.vertices[a++]=1,this.vertices[a++]=this.radius_,this.vertices[a++]=e[r],this.vertices[a++]=e[r+1],this.vertices[a++]=2,this.vertices[a++]=this.radius_,this.vertices[a++]=e[r],this.vertices[a++]=e[r+1],this.vertices[a++]=3,this.vertices[a++]=this.radius_,this.indices[s++]=c,this.indices[s++]=c+1,this.indices[s++]=c+2,this.indices[s++]=c+2,this.indices[s++]=c+3,this.indices[s++]=c,c+=4},t.prototype.drawCircle=function(e,t){var i=e.getRadius(),n=e.getStride();if(i){this.startIndices.push(this.indices.length),this.startIndicesFeature.push(t),this.state_.changed&&(this.styleIndices_.push(this.indices.length),this.state_.changed=!1),this.radius_=i;var r=e.getFlatCoordinates();r=Di(r,0,2,n,-this.origin[0],-this.origin[1]),this.drawCoordinates_(r,0,2,n)}else if(this.state_.changed&&(this.styles_.pop(),this.styles_.length)){var o=this.styles_[this.styles_.length-1];this.state_.fillColor=o[0],this.state_.strokeColor=o[1],this.state_.lineWidth=o[2],this.state_.changed=!1}},t.prototype.finish=function(e){this.verticesBuffer=new Jc(this.vertices),this.indicesBuffer=new Jc(this.indices),this.startIndices.push(this.indices.length),0===this.styleIndices_.length&&this.styles_.length>0&&(this.styles_=[]),this.vertices=null,this.indices=null},t.prototype.getDeleteResourcesFunction=function(e){var t=this.verticesBuffer,i=this.indicesBuffer;return function(){e.deleteBuffer(t),e.deleteBuffer(i)}},t.prototype.setUpProgram=function(e,t,i,n){var r,o=t.getProgram(Gc,Uc);return this.defaultLocations_?r=this.defaultLocations_:(r=new Wc(e,o),this.defaultLocations_=r),t.useProgram(o),e.enableVertexAttribArray(r.a_position),e.vertexAttribPointer(r.a_position,2,5126,!1,16,0),e.enableVertexAttribArray(r.a_instruction),e.vertexAttribPointer(r.a_instruction,1,5126,!1,16,8),e.enableVertexAttribArray(r.a_radius),e.vertexAttribPointer(r.a_radius,1,5126,!1,16,12),e.uniform2fv(r.u_size,i),e.uniform1f(r.u_pixelRatio,n),r},t.prototype.shutDownProgram=function(e,t){e.disableVertexAttribArray(t.a_position),e.disableVertexAttribArray(t.a_instruction),e.disableVertexAttribArray(t.a_radius)},t.prototype.drawReplay=function(e,t,i,n){var r,o,a,s;if(d(i))for(a=this.startIndices[this.startIndices.length-1],r=this.styleIndices_.length-1;r>=0;--r)o=this.styleIndices_[r],s=this.styles_[r],this.setFillStyle_(e,s[0]),this.setStrokeStyle_(e,s[1],s[2]),this.drawElements(e,t,o,a),a=o;else this.drawReplaySkipping_(e,t,i)},t.prototype.drawHitDetectionReplayOneByOne=function(e,t,i,n,o){var a,s,c,l,u,h,d;for(d=this.startIndices.length-2,c=this.startIndices[d+1],a=this.styleIndices_.length-1;a>=0;--a)for(l=this.styles_[a],this.setFillStyle_(e,l[0]),this.setStrokeStyle_(e,l[1],l[2]),u=this.styleIndices_[a];d>=0&&this.startIndices[d]>=u;){if(s=this.startIndices[d],void 0===i[r(h=this.startIndicesFeature[d])]&&h.getGeometry()&&(void 0===o||Si(o,h.getGeometry().getExtent()))){e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),this.drawElements(e,t,s,c);var p=n(h);if(p)return p}d--,c=s}},t.prototype.drawReplaySkipping_=function(e,t,i){var n,o,a,s,c,l,u;for(l=this.startIndices.length-2,a=o=this.startIndices[l+1],n=this.styleIndices_.length-1;n>=0;--n){for(s=this.styles_[n],this.setFillStyle_(e,s[0]),this.setStrokeStyle_(e,s[1],s[2]),c=this.styleIndices_[n];l>=0&&this.startIndices[l]>=c;)u=this.startIndices[l],i[r(this.startIndicesFeature[l])]&&(o!==a&&this.drawElements(e,t,o,a),a=u),l--,o=u;o!==a&&this.drawElements(e,t,o,a),o=a=c}},t.prototype.setFillStyle_=function(e,t){e.uniform4fv(this.defaultLocations_.u_fillColor,t)},t.prototype.setStrokeStyle_=function(e,t,i){e.uniform4fv(this.defaultLocations_.u_strokeColor,t),e.uniform1f(this.defaultLocations_.u_lineWidth,i)},t.prototype.setFillStrokeStyle=function(e,t){var i,n;if(t){var r=t.getLineDash();this.state_.lineDash=r||Xc;var o=t.getLineDashOffset();this.state_.lineDashOffset=o||0,i=(i=t.getColor())instanceof CanvasGradient||i instanceof CanvasPattern?Yc:zo(i).map((function(e,t){return 3!=t?e/255:e}))||Yc,n=void 0!==(n=t.getWidth())?n:1}else i=[0,0,0,0],n=0;var a=e?e.getColor():[0,0,0,0];a=a instanceof CanvasGradient||a instanceof CanvasPattern?jc:zo(a).map((function(e,t){return 3!=t?e/255:e}))||jc,this.state_.strokeColor&&ze(this.state_.strokeColor,i)&&this.state_.fillColor&&ze(this.state_.fillColor,a)&&this.state_.lineWidth===n||(this.state_.changed=!0,this.state_.fillColor=a,this.state_.strokeColor=i,this.state_.lineWidth=n,this.styles_.push([a,i,n]))},t}(Hc),el=new Vc("precision mediump float;\nvarying vec2 v_texCoord;\nvarying float v_opacity;\n\nuniform float u_opacity;\nuniform sampler2D u_image;\n\nvoid main(void) {\n  vec4 texColor = texture2D(u_image, v_texCoord);\n  gl_FragColor.rgb = texColor.rgb;\n  float alpha = texColor.a * v_opacity * u_opacity;\n  if (alpha == 0.0) {\n    discard;\n  }\n  gl_FragColor.a = alpha;\n}\n"),tl=new kc("varying vec2 v_texCoord;\nvarying float v_opacity;\n\nattribute vec2 a_position;\nattribute vec2 a_texCoord;\nattribute vec2 a_offsets;\nattribute float a_opacity;\nattribute float a_rotateWithView;\n\nuniform mat4 u_projectionMatrix;\nuniform mat4 u_offsetScaleMatrix;\nuniform mat4 u_offsetRotateMatrix;\n\nvoid main(void) {\n  mat4 offsetMatrix = u_offsetScaleMatrix;\n  if (a_rotateWithView == 1.0) {\n    offsetMatrix = u_offsetScaleMatrix * u_offsetRotateMatrix;\n  }\n  vec4 offsets = offsetMatrix * vec4(a_offsets, 0.0, 0.0);\n  gl_Position = u_projectionMatrix * vec4(a_position, 0.0, 1.0) + offsets;\n  v_texCoord = a_texCoord;\n  v_opacity = a_opacity;\n}\n\n\n"),il=function(e,t){this.u_projectionMatrix=e.getUniformLocation(t,"u_projectionMatrix"),this.u_offsetScaleMatrix=e.getUniformLocation(t,"u_offsetScaleMatrix"),this.u_offsetRotateMatrix=e.getUniformLocation(t,"u_offsetRotateMatrix"),this.u_opacity=e.getUniformLocation(t,"u_opacity"),this.u_image=e.getUniformLocation(t,"u_image"),this.a_position=e.getAttribLocation(t,"a_position"),this.a_texCoord=e.getAttribLocation(t,"a_texCoord"),this.a_offsets=e.getAttribLocation(t,"a_offsets"),this.a_opacity=e.getAttribLocation(t,"a_opacity"),this.a_rotateWithView=e.getAttribLocation(t,"a_rotateWithView")},nl={LOST:"webglcontextlost",RESTORED:"webglcontextrestored"},rl=function(e){function t(t,i){e.call(this),this.canvas_=t,this.gl_=i,this.bufferCache_={},this.shaderCache_={},this.programCache_={},this.currentProgram_=null,this.hitDetectionFramebuffer_=null,this.hitDetectionTexture_=null,this.hitDetectionRenderbuffer_=null,this.hasOESElementIndexUint=ke(w,"OES_element_index_uint"),this.hasOESElementIndexUint&&i.getExtension("OES_element_index_uint"),S(this.canvas_,nl.LOST,this.handleWebGLContextLost,this),S(this.canvas_,nl.RESTORED,this.handleWebGLContextRestored,this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.bindBuffer=function(e,t){var i=this.getGL(),n=t.getArray(),o=r(t);if(o in this.bufferCache_){var a=this.bufferCache_[o];i.bindBuffer(e,a.buffer)}else{var s,c=i.createBuffer();i.bindBuffer(e,c),34962==e?s=new Float32Array(n):34963==e&&(s=this.hasOESElementIndexUint?new Uint32Array(n):new Uint16Array(n)),i.bufferData(e,s,t.getUsage()),this.bufferCache_[o]={buf:t,buffer:c}}},t.prototype.deleteBuffer=function(e){var t=this.getGL(),i=r(e),n=this.bufferCache_[i];t.isContextLost()||t.deleteBuffer(n.buffer),delete this.bufferCache_[i]},t.prototype.disposeInternal=function(){C(this.canvas_);var e=this.getGL();if(!e.isContextLost()){for(var t in this.bufferCache_)e.deleteBuffer(this.bufferCache_[t].buffer);for(var i in this.programCache_)e.deleteProgram(this.programCache_[i]);for(var n in this.shaderCache_)e.deleteShader(this.shaderCache_[n]);e.deleteFramebuffer(this.hitDetectionFramebuffer_),e.deleteRenderbuffer(this.hitDetectionRenderbuffer_),e.deleteTexture(this.hitDetectionTexture_)}},t.prototype.getCanvas=function(){return this.canvas_},t.prototype.getGL=function(){return this.gl_},t.prototype.getHitDetectionFramebuffer=function(){return this.hitDetectionFramebuffer_||this.initHitDetectionFramebuffer_(),this.hitDetectionFramebuffer_},t.prototype.getShader=function(e){var t=r(e);if(t in this.shaderCache_)return this.shaderCache_[t];var i=this.getGL(),n=i.createShader(e.getType());return i.shaderSource(n,e.getSource()),i.compileShader(n),this.shaderCache_[t]=n,n},t.prototype.getProgram=function(e,t){var i=r(e)+"/"+r(t);if(i in this.programCache_)return this.programCache_[i];var n=this.getGL(),o=n.createProgram();return n.attachShader(o,this.getShader(e)),n.attachShader(o,this.getShader(t)),n.linkProgram(o),this.programCache_[i]=o,o},t.prototype.handleWebGLContextLost=function(){u(this.bufferCache_),u(this.shaderCache_),u(this.programCache_),this.currentProgram_=null,this.hitDetectionFramebuffer_=null,this.hitDetectionTexture_=null,this.hitDetectionRenderbuffer_=null},t.prototype.handleWebGLContextRestored=function(){},t.prototype.initHitDetectionFramebuffer_=function(){var e=this.gl_,t=e.createFramebuffer();e.bindFramebuffer(e.FRAMEBUFFER,t);var i=al(e,1,1),n=e.createRenderbuffer();e.bindRenderbuffer(e.RENDERBUFFER,n),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_COMPONENT16,1,1),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,i,0),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,n),e.bindTexture(e.TEXTURE_2D,null),e.bindRenderbuffer(e.RENDERBUFFER,null),e.bindFramebuffer(e.FRAMEBUFFER,null),this.hitDetectionFramebuffer_=t,this.hitDetectionTexture_=i,this.hitDetectionRenderbuffer_=n},t.prototype.useProgram=function(e){return e!=this.currentProgram_&&(this.getGL().useProgram(e),this.currentProgram_=e,!0)},t}(T);function ol(e,t,i){var n=e.createTexture();return e.bindTexture(e.TEXTURE_2D,n),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),void 0!==t&&e.texParameteri(H,W,t),void 0!==i&&e.texParameteri(H,z,i),n}function al(e,t,i,n,r){var o=ol(e,n,r);return e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,i,0,e.RGBA,e.UNSIGNED_BYTE,null),o}function sl(e,t,i,n){var r=ol(e,i,n);return e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),r}var cl=function(e){function t(t,i){e.call(this,t,i),this.anchorX=void 0,this.anchorY=void 0,this.groupIndices=[],this.hitDetectionGroupIndices=[],this.height=void 0,this.imageHeight=void 0,this.imageWidth=void 0,this.defaultLocations=null,this.opacity=void 0,this.originX=void 0,this.originY=void 0,this.rotateWithView=void 0,this.rotation=void 0,this.scale=void 0,this.width=void 0}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getDeleteResourcesFunction=function(e){var t=this.verticesBuffer,i=this.indicesBuffer,n=this.getTextures(!0),r=e.getGL();return function(){var o,a;if(!r.isContextLost())for(o=0,a=n.length;o<a;++o)r.deleteTexture(n[o]);e.deleteBuffer(t),e.deleteBuffer(i)}},t.prototype.drawCoordinates=function(e,t,i,n){var r,o,a,s,c,l,u=this.anchorX,h=this.anchorY,d=this.height,p=this.imageHeight,m=this.imageWidth,f=this.opacity,g=this.originX,S=this.originY,y=this.rotateWithView?1:0,v=-this.rotation,_=this.scale,C=this.width,T=Math.cos(v),D=Math.sin(v),A=this.indices.length,I=this.vertices.length;for(r=t;r<i;r+=n)c=e[r]-this.origin[0],l=e[r+1]-this.origin[1],o=I/8,a=-_*u,s=-_*(d-h),this.vertices[I++]=c,this.vertices[I++]=l,this.vertices[I++]=a*T-s*D,this.vertices[I++]=a*D+s*T,this.vertices[I++]=g/m,this.vertices[I++]=(S+d)/p,this.vertices[I++]=f,this.vertices[I++]=y,a=_*(C-u),s=-_*(d-h),this.vertices[I++]=c,this.vertices[I++]=l,this.vertices[I++]=a*T-s*D,this.vertices[I++]=a*D+s*T,this.vertices[I++]=(g+C)/m,this.vertices[I++]=(S+d)/p,this.vertices[I++]=f,this.vertices[I++]=y,a=_*(C-u),s=_*h,this.vertices[I++]=c,this.vertices[I++]=l,this.vertices[I++]=a*T-s*D,this.vertices[I++]=a*D+s*T,this.vertices[I++]=(g+C)/m,this.vertices[I++]=S/p,this.vertices[I++]=f,this.vertices[I++]=y,a=-_*u,s=_*h,this.vertices[I++]=c,this.vertices[I++]=l,this.vertices[I++]=a*T-s*D,this.vertices[I++]=a*D+s*T,this.vertices[I++]=g/m,this.vertices[I++]=S/p,this.vertices[I++]=f,this.vertices[I++]=y,this.indices[A++]=o,this.indices[A++]=o+1,this.indices[A++]=o+2,this.indices[A++]=o,this.indices[A++]=o+2,this.indices[A++]=o+3;return I},t.prototype.createTextures=function(e,t,i,n){var o,a,s,c,l=t.length;for(c=0;c<l;++c)(s=r(a=t[c]))in i?o=i[s]:(o=sl(n,a,33071,33071),i[s]=o),e[c]=o},t.prototype.setUpProgram=function(e,t,i,n){var r,o=t.getProgram(el,tl);return this.defaultLocations?r=this.defaultLocations:(r=new il(e,o),this.defaultLocations=r),t.useProgram(o),e.enableVertexAttribArray(r.a_position),e.vertexAttribPointer(r.a_position,2,5126,!1,32,0),e.enableVertexAttribArray(r.a_offsets),e.vertexAttribPointer(r.a_offsets,2,5126,!1,32,8),e.enableVertexAttribArray(r.a_texCoord),e.vertexAttribPointer(r.a_texCoord,2,5126,!1,32,16),e.enableVertexAttribArray(r.a_opacity),e.vertexAttribPointer(r.a_opacity,1,5126,!1,32,24),e.enableVertexAttribArray(r.a_rotateWithView),e.vertexAttribPointer(r.a_rotateWithView,1,5126,!1,32,28),r},t.prototype.shutDownProgram=function(e,t){e.disableVertexAttribArray(t.a_position),e.disableVertexAttribArray(t.a_offsets),e.disableVertexAttribArray(t.a_texCoord),e.disableVertexAttribArray(t.a_opacity),e.disableVertexAttribArray(t.a_rotateWithView)},t.prototype.drawReplay=function(e,t,i,n){var r,o,a,s=n?this.getHitDetectionTextures():this.getTextures(),c=n?this.hitDetectionGroupIndices:this.groupIndices;if(d(i))for(r=0,o=s.length,a=0;r<o;++r){e.bindTexture(H,s[r]);var l=c[r];this.drawElements(e,t,a,l),a=l}else this.drawReplaySkipping(e,t,i,s,c)},t.prototype.drawReplaySkipping=function(e,t,i,n,o){var a,s,c=0;for(a=0,s=n.length;a<s;++a){e.bindTexture(H,n[a]);for(var l=a>0?o[a-1]:0,u=o[a],h=l,d=l;c<this.startIndices.length&&this.startIndices[c]<=u;)void 0!==i[r(this.startIndicesFeature[c])]?(h!==d&&this.drawElements(e,t,h,d),d=h=c===this.startIndices.length-1?u:this.startIndices[c+1]):d=c===this.startIndices.length-1?u:this.startIndices[c+1],c++;h!==d&&this.drawElements(e,t,h,d)}},t.prototype.drawHitDetectionReplayOneByOne=function(e,t,i,n,o){var a,s,c,l,u,h=this.startIndices.length-1,d=this.getHitDetectionTextures();for(a=d.length-1;a>=0;--a)for(e.bindTexture(H,d[a]),s=a>0?this.hitDetectionGroupIndices[a-1]:0,l=this.hitDetectionGroupIndices[a];h>=0&&this.startIndices[h]>=s;){if(c=this.startIndices[h],void 0===i[r(u=this.startIndicesFeature[h])]&&u.getGeometry()&&(void 0===o||Si(o,u.getGeometry().getExtent()))){e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),this.drawElements(e,t,c,l);var p=n(u);if(p)return p}l=c,h--}},t.prototype.finish=function(e){this.anchorX=void 0,this.anchorY=void 0,this.height=void 0,this.imageHeight=void 0,this.imageWidth=void 0,this.indices=null,this.opacity=void 0,this.originX=void 0,this.originY=void 0,this.rotateWithView=void 0,this.rotation=void 0,this.scale=void 0,this.vertices=null,this.width=void 0},t.prototype.getTextures=function(e){return i()},t.prototype.getHitDetectionTextures=function(){return i()},t}(Hc),ll=function(e){function t(t,i){e.call(this,t,i),this.images_=[],this.hitDetectionImages_=[],this.textures_=[],this.hitDetectionTextures_=[]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawMultiPoint=function(e,t){this.startIndices.push(this.indices.length),this.startIndicesFeature.push(t);var i=e.getFlatCoordinates(),n=e.getStride();this.drawCoordinates(i,0,i.length,n)},t.prototype.drawPoint=function(e,t){this.startIndices.push(this.indices.length),this.startIndicesFeature.push(t);var i=e.getFlatCoordinates(),n=e.getStride();this.drawCoordinates(i,0,i.length,n)},t.prototype.finish=function(t){var i=t.getGL();this.groupIndices.push(this.indices.length),this.hitDetectionGroupIndices.push(this.indices.length),this.verticesBuffer=new Jc(this.vertices);var n=this.indices;this.indicesBuffer=new Jc(n);var r={};this.createTextures(this.textures_,this.images_,r,i),this.createTextures(this.hitDetectionTextures_,this.hitDetectionImages_,r,i),this.images_=null,this.hitDetectionImages_=null,e.prototype.finish.call(this,t)},t.prototype.setImageStyle=function(e){var t=e.getAnchor(),i=e.getImage(1),n=e.getImageSize(),o=e.getHitDetectionImage(1),a=e.getOpacity(),s=e.getOrigin(),c=e.getRotateWithView(),l=e.getRotation(),u=e.getSize(),h=e.getScale();0===this.images_.length?this.images_.push(i):r(this.images_[this.images_.length-1])!=r(i)&&(this.groupIndices.push(this.indices.length),this.images_.push(i)),0===this.hitDetectionImages_.length?this.hitDetectionImages_.push(o):r(this.hitDetectionImages_[this.hitDetectionImages_.length-1])!=r(o)&&(this.hitDetectionGroupIndices.push(this.indices.length),this.hitDetectionImages_.push(o)),this.anchorX=t[0],this.anchorY=t[1],this.height=u[1],this.imageHeight=n[1],this.imageWidth=n[0],this.opacity=a,this.originX=s[0],this.originY=s[1],this.rotation=l,this.rotateWithView=c,this.scale=h,this.width=u[0]},t.prototype.getTextures=function(e){return e?this.textures_.concat(this.hitDetectionTextures_):this.textures_},t.prototype.getHitDetectionTextures=function(){return this.hitDetectionTextures_},t}(cl);function ul(e,t,i,n){var r=i-n;return e[t]===e[r]&&e[t+1]===e[r+1]&&(i-t)/n>3&&!!yn(e,t,i,n)}var hl=new Vc("precision mediump float;\nvarying float v_round;\nvarying vec2 v_roundVertex;\nvarying float v_halfWidth;\n\n\n\nuniform float u_opacity;\nuniform vec4 u_color;\nuniform vec2 u_size;\nuniform float u_pixelRatio;\n\nvoid main(void) {\n  if (v_round > 0.0) {\n    vec2 windowCoords = vec2((v_roundVertex.x + 1.0) / 2.0 * u_size.x * u_pixelRatio,\n        (v_roundVertex.y + 1.0) / 2.0 * u_size.y * u_pixelRatio);\n    if (length(windowCoords - gl_FragCoord.xy) > v_halfWidth * u_pixelRatio) {\n      discard;\n    }\n  }\n  gl_FragColor = u_color;\n  float alpha = u_color.a * u_opacity;\n  if (alpha == 0.0) {\n    discard;\n  }\n  gl_FragColor.a = alpha;\n}\n"),dl=new kc("varying float v_round;\nvarying vec2 v_roundVertex;\nvarying float v_halfWidth;\n\n\nattribute vec2 a_lastPos;\nattribute vec2 a_position;\nattribute vec2 a_nextPos;\nattribute float a_direction;\n\nuniform mat4 u_projectionMatrix;\nuniform mat4 u_offsetScaleMatrix;\nuniform mat4 u_offsetRotateMatrix;\nuniform float u_lineWidth;\nuniform float u_miterLimit;\n\nbool nearlyEquals(in float value, in float ref) {\n  float epsilon = 0.000000000001;\n  return value >= ref - epsilon && value <= ref + epsilon;\n}\n\nvoid alongNormal(out vec2 offset, in vec2 nextP, in float turnDir, in float direction) {\n  vec2 dirVect = nextP - a_position;\n  vec2 normal = normalize(vec2(-turnDir * dirVect.y, turnDir * dirVect.x));\n  offset = u_lineWidth / 2.0 * normal * direction;\n}\n\nvoid miterUp(out vec2 offset, out float round, in bool isRound, in float direction) {\n  float halfWidth = u_lineWidth / 2.0;\n  vec2 tangent = normalize(normalize(a_nextPos - a_position) + normalize(a_position - a_lastPos));\n  vec2 normal = vec2(-tangent.y, tangent.x);\n  vec2 dirVect = a_nextPos - a_position;\n  vec2 tmpNormal = normalize(vec2(-dirVect.y, dirVect.x));\n  float miterLength = abs(halfWidth / dot(normal, tmpNormal));\n  offset = normal * direction * miterLength;\n  round = 0.0;\n  if (isRound) {\n    round = 1.0;\n  } else if (miterLength > u_miterLimit + u_lineWidth) {\n    offset = halfWidth * tmpNormal * direction;\n  }\n}\n\nbool miterDown(out vec2 offset, in vec4 projPos, in mat4 offsetMatrix, in float direction) {\n  bool degenerate = false;\n  vec2 tangent = normalize(normalize(a_nextPos - a_position) + normalize(a_position - a_lastPos));\n  vec2 normal = vec2(-tangent.y, tangent.x);\n  vec2 dirVect = a_lastPos - a_position;\n  vec2 tmpNormal = normalize(vec2(-dirVect.y, dirVect.x));\n  vec2 longOffset, shortOffset, longVertex;\n  vec4 shortProjVertex;\n  float halfWidth = u_lineWidth / 2.0;\n  if (length(a_nextPos - a_position) > length(a_lastPos - a_position)) {\n    longOffset = tmpNormal * direction * halfWidth;\n    shortOffset = normalize(vec2(dirVect.y, -dirVect.x)) * direction * halfWidth;\n    longVertex = a_nextPos;\n    shortProjVertex = u_projectionMatrix * vec4(a_lastPos, 0.0, 1.0);\n  } else {\n    shortOffset = tmpNormal * direction * halfWidth;\n    longOffset = normalize(vec2(dirVect.y, -dirVect.x)) * direction * halfWidth;\n    longVertex = a_lastPos;\n    shortProjVertex = u_projectionMatrix * vec4(a_nextPos, 0.0, 1.0);\n  }\n  //Intersection algorithm based on theory by Paul Bourke (http://paulbourke.net/geometry/pointlineplane/).\n  vec4 p1 = u_projectionMatrix * vec4(longVertex, 0.0, 1.0) + offsetMatrix * vec4(longOffset, 0.0, 0.0);\n  vec4 p2 = projPos + offsetMatrix * vec4(longOffset, 0.0, 0.0);\n  vec4 p3 = shortProjVertex + offsetMatrix * vec4(-shortOffset, 0.0, 0.0);\n  vec4 p4 = shortProjVertex + offsetMatrix * vec4(shortOffset, 0.0, 0.0);\n  float denom = (p4.y - p3.y) * (p2.x - p1.x) - (p4.x - p3.x) * (p2.y - p1.y);\n  float firstU = ((p4.x - p3.x) * (p1.y - p3.y) - (p4.y - p3.y) * (p1.x - p3.x)) / denom;\n  float secondU = ((p2.x - p1.x) * (p1.y - p3.y) - (p2.y - p1.y) * (p1.x - p3.x)) / denom;\n  float epsilon = 0.000000000001;\n  if (firstU > epsilon && firstU < 1.0 - epsilon && secondU > epsilon && secondU < 1.0 - epsilon) {\n    shortProjVertex.x = p1.x + firstU * (p2.x - p1.x);\n    shortProjVertex.y = p1.y + firstU * (p2.y - p1.y);\n    offset = shortProjVertex.xy;\n    degenerate = true;\n  } else {\n    float miterLength = abs(halfWidth / dot(normal, tmpNormal));\n    offset = normal * direction * miterLength;\n  }\n  return degenerate;\n}\n\nvoid squareCap(out vec2 offset, out float round, in bool isRound, in vec2 nextP,\n    in float turnDir, in float direction) {\n  round = 0.0;\n  vec2 dirVect = a_position - nextP;\n  vec2 firstNormal = normalize(dirVect);\n  vec2 secondNormal = vec2(turnDir * firstNormal.y * direction, -turnDir * firstNormal.x * direction);\n  vec2 hypotenuse = normalize(firstNormal - secondNormal);\n  vec2 normal = vec2(turnDir * hypotenuse.y * direction, -turnDir * hypotenuse.x * direction);\n  float length = sqrt(v_halfWidth * v_halfWidth * 2.0);\n  offset = normal * length;\n  if (isRound) {\n    round = 1.0;\n  }\n}\n\nvoid main(void) {\n  bool degenerate = false;\n  float direction = float(sign(a_direction));\n  mat4 offsetMatrix = u_offsetScaleMatrix * u_offsetRotateMatrix;\n  vec2 offset;\n  vec4 projPos = u_projectionMatrix * vec4(a_position, 0.0, 1.0);\n  bool round = nearlyEquals(mod(a_direction, 2.0), 0.0);\n\n  v_round = 0.0;\n  v_halfWidth = u_lineWidth / 2.0;\n  v_roundVertex = projPos.xy;\n\n  if (nearlyEquals(mod(a_direction, 3.0), 0.0) || nearlyEquals(mod(a_direction, 17.0), 0.0)) {\n    alongNormal(offset, a_nextPos, 1.0, direction);\n  } else if (nearlyEquals(mod(a_direction, 5.0), 0.0) || nearlyEquals(mod(a_direction, 13.0), 0.0)) {\n    alongNormal(offset, a_lastPos, -1.0, direction);\n  } else if (nearlyEquals(mod(a_direction, 23.0), 0.0)) {\n    miterUp(offset, v_round, round, direction);\n  } else if (nearlyEquals(mod(a_direction, 19.0), 0.0)) {\n    degenerate = miterDown(offset, projPos, offsetMatrix, direction);\n  } else if (nearlyEquals(mod(a_direction, 7.0), 0.0)) {\n    squareCap(offset, v_round, round, a_nextPos, 1.0, direction);\n  } else if (nearlyEquals(mod(a_direction, 11.0), 0.0)) {\n    squareCap(offset, v_round, round, a_lastPos, -1.0, direction);\n  }\n  if (!degenerate) {\n    vec4 offsets = offsetMatrix * vec4(offset, 0.0, 0.0);\n    gl_Position = projPos + offsets;\n  } else {\n    gl_Position = vec4(offset, 0.0, 1.0);\n  }\n}\n\n\n"),pl=function(e,t){this.u_projectionMatrix=e.getUniformLocation(t,"u_projectionMatrix"),this.u_offsetScaleMatrix=e.getUniformLocation(t,"u_offsetScaleMatrix"),this.u_offsetRotateMatrix=e.getUniformLocation(t,"u_offsetRotateMatrix"),this.u_lineWidth=e.getUniformLocation(t,"u_lineWidth"),this.u_miterLimit=e.getUniformLocation(t,"u_miterLimit"),this.u_opacity=e.getUniformLocation(t,"u_opacity"),this.u_color=e.getUniformLocation(t,"u_color"),this.u_size=e.getUniformLocation(t,"u_size"),this.u_pixelRatio=e.getUniformLocation(t,"u_pixelRatio"),this.a_lastPos=e.getAttribLocation(t,"a_lastPos"),this.a_position=e.getAttribLocation(t,"a_position"),this.a_nextPos=e.getAttribLocation(t,"a_nextPos"),this.a_direction=e.getAttribLocation(t,"a_direction")},ml=3,fl=5,gl=7,Sl=11,yl=13,vl=17,_l=19,Cl=23,Tl=function(e){function t(t,i){e.call(this,t,i),this.defaultLocations_=null,this.styles_=[],this.styleIndices_=[],this.state_={strokeColor:null,lineCap:void 0,lineDash:null,lineDashOffset:void 0,lineJoin:void 0,lineWidth:void 0,miterLimit:void 0,changed:!1}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawCoordinates_=function(e,t,i,n){var r,o,a,s,c,l,u,h,d=this.vertices.length,p=this.indices.length,m="bevel"===this.state_.lineJoin?0:"miter"===this.state_.lineJoin?1:2,f="butt"===this.state_.lineCap?0:"square"===this.state_.lineCap?1:2,g=ul(e,t,i,n),S=p,y=1;for(r=t,o=i;r<o;r+=n){if(c=d/7,l=u,u=h||[e[r],e[r+1]],r===t){if(h=[e[r+n],e[r+n+1]],i-t==2*n&&ze(u,h))break;if(!g){f&&(d=this.addVertices_([0,0],u,h,y*gl*f,d),d=this.addVertices_([0,0],u,h,-y*gl*f,d),this.indices[p++]=c+2,this.indices[p++]=c,this.indices[p++]=c+1,this.indices[p++]=c+1,this.indices[p++]=c+3,this.indices[p++]=c+2),d=this.addVertices_([0,0],u,h,y*ml*(f||1),d),S=(d=this.addVertices_([0,0],u,h,-y*ml*(f||1),d))/7-1;continue}l=[e[i-2*n],e[i-2*n+1]],a=h}else{if(r===i-n){if(g){h=a;break}l=l||[0,0],d=this.addVertices_(l,u,[0,0],y*fl*(f||1),d),d=this.addVertices_(l,u,[0,0],-y*fl*(f||1),d),this.indices[p++]=c,this.indices[p++]=S-1,this.indices[p++]=S,this.indices[p++]=S,this.indices[p++]=c+1,this.indices[p++]=c,f&&(d=this.addVertices_(l,u,[0,0],y*Sl*f,d),d=this.addVertices_(l,u,[0,0],-y*Sl*f,d),this.indices[p++]=c+2,this.indices[p++]=c,this.indices[p++]=c+1,this.indices[p++]=c+1,this.indices[p++]=c+3,this.indices[p++]=c+2);break}h=[e[r+n],e[r+n+1]]}s=Zc(l[0],l[1],u[0],u[1],h[0],h[1])?-1:1,d=this.addVertices_(l,u,h,s*yl*(m||1),d),d=this.addVertices_(l,u,h,s*vl*(m||1),d),d=this.addVertices_(l,u,h,-s*_l*(m||1),d),r>t&&(this.indices[p++]=c,this.indices[p++]=S-1,this.indices[p++]=S,this.indices[p++]=c+2,this.indices[p++]=c,this.indices[p++]=y*s>0?S:S-1),this.indices[p++]=c,this.indices[p++]=c+2,this.indices[p++]=c+1,S=c+2,y=s,m&&(d=this.addVertices_(l,u,h,s*Cl*m,d),this.indices[p++]=c+1,this.indices[p++]=c+3,this.indices[p++]=c)}g&&(c=c||d/7,s=Hn([l[0],l[1],u[0],u[1],h[0],h[1]],0,6,2)?1:-1,d=this.addVertices_(l,u,h,s*yl*(m||1),d),d=this.addVertices_(l,u,h,-s*_l*(m||1),d),this.indices[p++]=c,this.indices[p++]=S-1,this.indices[p++]=S,this.indices[p++]=c+1,this.indices[p++]=c,this.indices[p++]=y*s>0?S:S-1)},t.prototype.addVertices_=function(e,t,i,n,r){return this.vertices[r++]=e[0],this.vertices[r++]=e[1],this.vertices[r++]=t[0],this.vertices[r++]=t[1],this.vertices[r++]=i[0],this.vertices[r++]=i[1],this.vertices[r++]=n,r},t.prototype.isValid_=function(e,t,i,n){var r=i-t;return!(r<2*n||r===2*n&&ze([e[t],e[t+1]],[e[t+n],e[t+n+1]]))},t.prototype.drawLineString=function(e,t){var i=e.getFlatCoordinates(),n=e.getStride();this.isValid_(i,0,i.length,n)&&(i=Di(i,0,i.length,n,-this.origin[0],-this.origin[1]),this.state_.changed&&(this.styleIndices_.push(this.indices.length),this.state_.changed=!1),this.startIndices.push(this.indices.length),this.startIndicesFeature.push(t),this.drawCoordinates_(i,0,i.length,n))},t.prototype.drawMultiLineString=function(e,t){var i=this.indices.length,n=e.getEnds();n.unshift(0);var r,o,a=e.getFlatCoordinates(),s=e.getStride();if(n.length>1)for(r=1,o=n.length;r<o;++r)if(this.isValid_(a,n[r-1],n[r],s)){var c=Di(a,n[r-1],n[r],s,-this.origin[0],-this.origin[1]);this.drawCoordinates_(c,0,c.length,s)}this.indices.length>i&&(this.startIndices.push(i),this.startIndicesFeature.push(t),this.state_.changed&&(this.styleIndices_.push(i),this.state_.changed=!1))},t.prototype.drawPolygonCoordinates=function(e,t,i){var n,r;if(ul(e,0,e.length,i)||(e.push(e[0]),e.push(e[1])),this.drawCoordinates_(e,0,e.length,i),t.length)for(n=0,r=t.length;n<r;++n)ul(t[n],0,t[n].length,i)||(t[n].push(t[n][0]),t[n].push(t[n][1])),this.drawCoordinates_(t[n],0,t[n].length,i)},t.prototype.setPolygonStyle=function(e,t){var i=void 0===t?this.indices.length:t;this.startIndices.push(i),this.startIndicesFeature.push(e),this.state_.changed&&(this.styleIndices_.push(i),this.state_.changed=!1)},t.prototype.getCurrentIndex=function(){return this.indices.length},t.prototype.finish=function(e){this.verticesBuffer=new Jc(this.vertices),this.indicesBuffer=new Jc(this.indices),this.startIndices.push(this.indices.length),0===this.styleIndices_.length&&this.styles_.length>0&&(this.styles_=[]),this.vertices=null,this.indices=null},t.prototype.getDeleteResourcesFunction=function(e){var t=this.verticesBuffer,i=this.indicesBuffer;return function(){e.deleteBuffer(t),e.deleteBuffer(i)}},t.prototype.setUpProgram=function(e,t,i,n){var r,o=t.getProgram(hl,dl);return this.defaultLocations_?r=this.defaultLocations_:(r=new pl(e,o),this.defaultLocations_=r),t.useProgram(o),e.enableVertexAttribArray(r.a_lastPos),e.vertexAttribPointer(r.a_lastPos,2,5126,!1,28,0),e.enableVertexAttribArray(r.a_position),e.vertexAttribPointer(r.a_position,2,5126,!1,28,8),e.enableVertexAttribArray(r.a_nextPos),e.vertexAttribPointer(r.a_nextPos,2,5126,!1,28,16),e.enableVertexAttribArray(r.a_direction),e.vertexAttribPointer(r.a_direction,1,5126,!1,28,24),e.uniform2fv(r.u_size,i),e.uniform1f(r.u_pixelRatio,n),r},t.prototype.shutDownProgram=function(e,t){e.disableVertexAttribArray(t.a_lastPos),e.disableVertexAttribArray(t.a_position),e.disableVertexAttribArray(t.a_nextPos),e.disableVertexAttribArray(t.a_direction)},t.prototype.drawReplay=function(e,t,i,n){var r,o,a,s,c=e.getParameter(e.DEPTH_FUNC),l=e.getParameter(e.DEPTH_WRITEMASK);if(n||(e.enable(e.DEPTH_TEST),e.depthMask(!0),e.depthFunc(e.NOTEQUAL)),d(i))for(a=this.startIndices[this.startIndices.length-1],r=this.styleIndices_.length-1;r>=0;--r)o=this.styleIndices_[r],s=this.styles_[r],this.setStrokeStyle_(e,s[0],s[1],s[2]),this.drawElements(e,t,o,a),e.clear(e.DEPTH_BUFFER_BIT),a=o;else this.drawReplaySkipping_(e,t,i);n||(e.disable(e.DEPTH_TEST),e.clear(e.DEPTH_BUFFER_BIT),e.depthMask(l),e.depthFunc(c))},t.prototype.drawReplaySkipping_=function(e,t,i){var n,o,a,s,c,l,u;for(l=this.startIndices.length-2,a=o=this.startIndices[l+1],n=this.styleIndices_.length-1;n>=0;--n){for(s=this.styles_[n],this.setStrokeStyle_(e,s[0],s[1],s[2]),c=this.styleIndices_[n];l>=0&&this.startIndices[l]>=c;)u=this.startIndices[l],i[r(this.startIndicesFeature[l])]&&(o!==a&&(this.drawElements(e,t,o,a),e.clear(e.DEPTH_BUFFER_BIT)),a=u),l--,o=u;o!==a&&(this.drawElements(e,t,o,a),e.clear(e.DEPTH_BUFFER_BIT)),o=a=c}},t.prototype.drawHitDetectionReplayOneByOne=function(e,t,i,n,o){var a,s,c,l,u,h,d;for(d=this.startIndices.length-2,c=this.startIndices[d+1],a=this.styleIndices_.length-1;a>=0;--a)for(l=this.styles_[a],this.setStrokeStyle_(e,l[0],l[1],l[2]),u=this.styleIndices_[a];d>=0&&this.startIndices[d]>=u;){if(s=this.startIndices[d],void 0===i[r(h=this.startIndicesFeature[d])]&&h.getGeometry()&&(void 0===o||Si(o,h.getGeometry().getExtent()))){e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),this.drawElements(e,t,s,c);var p=n(h);if(p)return p}d--,c=s}},t.prototype.setStrokeStyle_=function(e,t,i,n){e.uniform4fv(this.defaultLocations_.u_color,t),e.uniform1f(this.defaultLocations_.u_lineWidth,i),e.uniform1f(this.defaultLocations_.u_miterLimit,n)},t.prototype.setFillStrokeStyle=function(e,t){var i=t.getLineCap();this.state_.lineCap=void 0!==i?i:"round";var n=t.getLineDash();this.state_.lineDash=n||Xc;var r=t.getLineDashOffset();this.state_.lineDashOffset=r||0;var o=t.getLineJoin();this.state_.lineJoin=void 0!==o?o:"round";var a=t.getColor();a=a instanceof CanvasGradient||a instanceof CanvasPattern?Yc:zo(a).map((function(e,t){return 3!=t?e/255:e}))||Yc;var s=t.getWidth();s=void 0!==s?s:1;var c=t.getMiterLimit();c=void 0!==c?c:10,this.state_.strokeColor&&ze(this.state_.strokeColor,a)&&this.state_.lineWidth===s&&this.state_.miterLimit===c||(this.state_.changed=!0,this.state_.strokeColor=a,this.state_.lineWidth=s,this.state_.miterLimit=c,this.styles_.push([a,s,c]))},t}(Hc),Dl=new Vc("precision mediump float;\n\n\n\nuniform vec4 u_color;\nuniform float u_opacity;\n\nvoid main(void) {\n  gl_FragColor = u_color;\n  float alpha = u_color.a * u_opacity;\n  if (alpha == 0.0) {\n    discard;\n  }\n  gl_FragColor.a = alpha;\n}\n"),Al=new kc("\n\nattribute vec2 a_position;\n\nuniform mat4 u_projectionMatrix;\nuniform mat4 u_offsetScaleMatrix;\nuniform mat4 u_offsetRotateMatrix;\n\nvoid main(void) {\n  gl_Position = u_projectionMatrix * vec4(a_position, 0.0, 1.0);\n}\n\n\n"),Il=function(e,t){this.u_projectionMatrix=e.getUniformLocation(t,"u_projectionMatrix"),this.u_offsetScaleMatrix=e.getUniformLocation(t,"u_offsetScaleMatrix"),this.u_offsetRotateMatrix=e.getUniformLocation(t,"u_offsetRotateMatrix"),this.u_color=e.getUniformLocation(t,"u_color"),this.u_opacity=e.getUniformLocation(t,"u_opacity"),this.a_position=e.getAttribLocation(t,"a_position")},Pl=function(e){this.first_,this.last_,this.head_,this.circular_=void 0===e||e,this.length_=0};Pl.prototype.insertItem=function(e){var t={prev:void 0,next:void 0,data:e},i=this.head_;if(i){var n=i.next;t.prev=i,t.next=n,i.next=t,n&&(n.prev=t),i===this.last_&&(this.last_=t)}else this.first_=t,this.last_=t,this.circular_&&(t.next=t,t.prev=t);this.head_=t,this.length_++},Pl.prototype.removeItem=function(){var e=this.head_;if(e){var t=e.next,i=e.prev;t&&(t.prev=i),i&&(i.next=t),this.head_=t||i,this.first_===this.last_?(this.head_=void 0,this.first_=void 0,this.last_=void 0):this.first_===e?this.first_=this.head_:this.last_===e&&(this.last_=i?this.head_.prev:this.head_),this.length_--}},Pl.prototype.firstItem=function(){if(this.head_=this.first_,this.head_)return this.head_.data},Pl.prototype.lastItem=function(){if(this.head_=this.last_,this.head_)return this.head_.data},Pl.prototype.nextItem=function(){if(this.head_&&this.head_.next)return this.head_=this.head_.next,this.head_.data},Pl.prototype.getNextItem=function(){if(this.head_&&this.head_.next)return this.head_.next.data},Pl.prototype.prevItem=function(){if(this.head_&&this.head_.prev)return this.head_=this.head_.prev,this.head_.data},Pl.prototype.getPrevItem=function(){if(this.head_&&this.head_.prev)return this.head_.prev.data},Pl.prototype.getCurrItem=function(){if(this.head_)return this.head_.data},Pl.prototype.setFirstItem=function(){this.circular_&&this.head_&&(this.first_=this.head_,this.last_=this.head_.prev)},Pl.prototype.concat=function(e){if(e.head_){if(this.head_){var t=this.head_.next;this.head_.next=e.first_,e.first_.prev=this.head_,t.prev=e.last_,e.last_.next=t,this.length_+=e.length_}else this.head_=e.head_,this.first_=e.first_,this.last_=e.last_,this.length_=e.length_;e.head_=void 0,e.first_=void 0,e.last_=void 0,e.length_=0}},Pl.prototype.getLength=function(){return this.length_};var Rl=function(e){function t(t,i){e.call(this,t,i),this.lineStringReplay=new Tl(t,i),this.defaultLocations_=null,this.styles_=[],this.styleIndices_=[],this.state_={fillColor:null,changed:!1}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawCoordinates_=function(e,t,i){var n=new Pl,r=new Ka;this.processFlatCoordinates_(e,i,n,r,!0);var o=this.getMaxCoords_(n);if(t.length){var a,s,c=[];for(a=0,s=t.length;a<s;++a){var l={list:new Pl,maxCoords:void 0,rtree:new Ka};c.push(l),this.processFlatCoordinates_(t[a],i,l.list,l.rtree,!1),this.classifyPoints_(l.list,l.rtree,!0),l.maxCoords=this.getMaxCoords_(l.list)}for(c.sort((function(e,t){return t.maxCoords[0]===e.maxCoords[0]?e.maxCoords[1]-t.maxCoords[1]:t.maxCoords[0]-e.maxCoords[0]})),a=0;a<c.length;++a){var u=c[a].list,h=u.firstItem(),d=h,p=void 0;do{if(this.getIntersections_(d,r).length){p=!0;break}d=u.nextItem()}while(h!==d);p||this.bridgeHole_(u,c[a].maxCoords[0],n,o[0],r)&&(r.concat(c[a].rtree),this.classifyPoints_(n,r,!1))}}else this.classifyPoints_(n,r,!1);this.triangulate_(n,r)},t.prototype.processFlatCoordinates_=function(e,t,i,n,r){var o,a,s,c,l,u=Hn(e,0,e.length,t),h=this.vertices.length/2,d=[],p=[];if(r===u){for(c=s=this.createPoint_(e[0],e[1],h++),o=t,a=e.length;o<a;o+=t)l=this.createPoint_(e[o],e[o+1],h++),p.push(this.insertItem_(c,l,i)),d.push([Math.min(c.x,l.x),Math.min(c.y,l.y),Math.max(c.x,l.x),Math.max(c.y,l.y)]),c=l;p.push(this.insertItem_(l,s,i)),d.push([Math.min(c.x,l.x),Math.min(c.y,l.y),Math.max(c.x,l.x),Math.max(c.y,l.y)])}else{var m=e.length-t;for(c=s=this.createPoint_(e[m],e[m+1],h++),o=m-t,a=0;o>=a;o-=t)l=this.createPoint_(e[o],e[o+1],h++),p.push(this.insertItem_(c,l,i)),d.push([Math.min(c.x,l.x),Math.min(c.y,l.y),Math.max(c.x,l.x),Math.max(c.y,l.y)]),c=l;p.push(this.insertItem_(l,s,i)),d.push([Math.min(c.x,l.x),Math.min(c.y,l.y),Math.max(c.x,l.x),Math.max(c.y,l.y)])}n.load(d,p)},t.prototype.getMaxCoords_=function(e){var t=e.firstItem(),i=t,n=[i.p0.x,i.p0.y];do{(i=e.nextItem()).p0.x>n[0]&&(n=[i.p0.x,i.p0.y])}while(i!==t);return n},t.prototype.classifyPoints_=function(e,t,i){var n=e.firstItem(),r=n,o=e.nextItem(),a=!1;do{var s=i?Zc(o.p1.x,o.p1.y,r.p1.x,r.p1.y,r.p0.x,r.p0.y):Zc(r.p0.x,r.p0.y,r.p1.x,r.p1.y,o.p1.x,o.p1.y);void 0===s?(this.removeItem_(r,o,e,t),a=!0,o===n&&(n=e.getNextItem()),o=r,e.prevItem()):r.p1.reflex!==s&&(r.p1.reflex=s,a=!0),r=o,o=e.nextItem()}while(r!==n);return a},t.prototype.bridgeHole_=function(e,t,i,n,r){for(var o=e.firstItem();o.p1.x!==t;)o=e.nextItem();var a,s,c,l,u=o.p1,h={x:n,y:u.y,i:-1},d=1/0,p=this.getIntersections_({p0:u,p1:h},r,!0);for(a=0,s=p.length;a<s;++a){var m=p[a],f=this.calculateIntersection_(u,h,m.p0,m.p1,!0),g=Math.abs(u.x-f[0]);g<d&&void 0!==Zc(u.x,u.y,m.p0.x,m.p0.y,m.p1.x,m.p1.y)&&(d=g,l={x:f[0],y:f[1],i:-1},o=m)}if(d===1/0)return!1;if(c=o.p1,d>0){var S=this.getPointsInTriangle_(u,l,o.p1,r);if(S.length){var y=1/0;for(a=0,s=S.length;a<s;++a){var v=S[a],_=Math.atan2(u.y-v.y,h.x-v.x);(_<y||_===y&&v.x<c.x)&&(y=_,c=v)}}}for(o=i.firstItem();o.p1.x!==c.x||o.p1.y!==c.y;)o=i.nextItem();var C={x:u.x,y:u.y,i:u.i,reflex:void 0},T={x:o.p1.x,y:o.p1.y,i:o.p1.i,reflex:void 0};return e.getNextItem().p0=C,this.insertItem_(u,o.p1,e,r),this.insertItem_(T,C,e,r),o.p1=T,e.setFirstItem(),i.concat(e),!0},t.prototype.triangulate_=function(e,t){for(var i=!1,n=this.isSimple_(e,t);e.getLength()>3;)if(n){if(!this.clipEars_(e,t,n,i)&&!this.classifyPoints_(e,t,i)&&!this.resolveSelfIntersections_(e,t,!0))break}else if(!this.clipEars_(e,t,n,i)&&!this.classifyPoints_(e,t,i)&&!this.resolveSelfIntersections_(e,t)){if(!(n=this.isSimple_(e,t))){this.splitPolygon_(e,t);break}i=!this.isClockwise_(e),this.classifyPoints_(e,t,i)}if(3===e.getLength()){var r=this.indices.length;this.indices[r++]=e.getPrevItem().p0.i,this.indices[r++]=e.getCurrItem().p0.i,this.indices[r++]=e.getNextItem().p0.i}},t.prototype.clipEars_=function(e,t,i,n){var r,o,a,s=this.indices.length,c=e.firstItem(),l=e.getPrevItem(),u=c,h=e.nextItem(),d=e.getNextItem(),p=!1;do{if(r=u.p0,o=u.p1,a=h.p1,!1===o.reflex){var m=void 0;m=i?0===this.getPointsInTriangle_(r,o,a,t,!0).length:n?this.diagonalIsInside_(d.p1,a,o,r,l.p0):this.diagonalIsInside_(l.p0,r,o,a,d.p1),(i||0===this.getIntersections_({p0:r,p1:a},t).length)&&m&&(i||!1===r.reflex||!1===a.reflex||Hn([l.p0.x,l.p0.y,r.x,r.y,o.x,o.y,a.x,a.y,d.p1.x,d.p1.y],0,10,2)===!n)&&(this.indices[s++]=r.i,this.indices[s++]=o.i,this.indices[s++]=a.i,this.removeItem_(u,h,e,t),h===c&&(c=d),p=!0)}l=e.getPrevItem(),u=e.getCurrItem(),h=e.nextItem(),d=e.getNextItem()}while(u!==c&&e.getLength()>3);return p},t.prototype.resolveSelfIntersections_=function(e,t,i){var n=e.firstItem();e.nextItem();var r=n,o=e.nextItem(),a=!1;do{var s=this.calculateIntersection_(r.p0,r.p1,o.p0,o.p1,i);if(s){var c=!1,l=this.vertices.length,u=this.indices.length,h=l/2,d=e.prevItem();e.removeItem(),t.remove(d),c=d===n;var p=void 0;if(i?(s[0]===r.p0.x&&s[1]===r.p0.y?(e.prevItem(),p=r.p0,o.p0=p,t.remove(r),c=c||r===n):(p=o.p1,r.p1=p,t.remove(o),c=c||o===n),e.removeItem()):(p=this.createPoint_(s[0],s[1],h),r.p1=p,o.p0=p,t.update([Math.min(r.p0.x,r.p1.x),Math.min(r.p0.y,r.p1.y),Math.max(r.p0.x,r.p1.x),Math.max(r.p0.y,r.p1.y)],r),t.update([Math.min(o.p0.x,o.p1.x),Math.min(o.p0.y,o.p1.y),Math.max(o.p0.x,o.p1.x),Math.max(o.p0.y,o.p1.y)],o)),this.indices[u++]=d.p0.i,this.indices[u++]=d.p1.i,this.indices[u++]=p.i,a=!0,c)break}r=e.getPrevItem(),o=e.nextItem()}while(r!==n);return a},t.prototype.isSimple_=function(e,t){var i=e.firstItem(),n=i;do{if(this.getIntersections_(n,t).length)return!1;n=e.nextItem()}while(n!==i);return!0},t.prototype.isClockwise_=function(e){var t=2*e.getLength(),i=new Array(t),n=e.firstItem(),r=n,o=0;do{i[o++]=r.p0.x,i[o++]=r.p0.y,r=e.nextItem()}while(r!==n);return Hn(i,0,t,2)},t.prototype.splitPolygon_=function(e,t){var i=e.firstItem(),n=i;do{var r=this.getIntersections_(n,t);if(r.length){var o=r[0],a=this.vertices.length/2,s=this.calculateIntersection_(n.p0,n.p1,o.p0,o.p1),c=this.createPoint_(s[0],s[1],a),l=new Pl,u=new Ka;this.insertItem_(c,n.p1,l,u),n.p1=c,t.update([Math.min(n.p0.x,c.x),Math.min(n.p0.y,c.y),Math.max(n.p0.x,c.x),Math.max(n.p0.y,c.y)],n);for(var h=e.nextItem();h!==o;)this.insertItem_(h.p0,h.p1,l,u),t.remove(h),e.removeItem(),h=e.getCurrItem();this.insertItem_(o.p0,c,l,u),o.p0=c,t.update([Math.min(o.p1.x,c.x),Math.min(o.p1.y,c.y),Math.max(o.p1.x,c.x),Math.max(o.p1.y,c.y)],o),this.classifyPoints_(e,t,!1),this.triangulate_(e,t),this.classifyPoints_(l,u,!1),this.triangulate_(l,u);break}n=e.nextItem()}while(n!==i)},t.prototype.createPoint_=function(e,t,i){var n=this.vertices.length;return this.vertices[n++]=e,this.vertices[n++]=t,{x:e,y:t,i:i,reflex:void 0}},t.prototype.insertItem_=function(e,t,i,n){var r={p0:e,p1:t};return i.insertItem(r),n&&n.insert([Math.min(e.x,t.x),Math.min(e.y,t.y),Math.max(e.x,t.x),Math.max(e.y,t.y)],r),r},t.prototype.removeItem_=function(e,t,i,n){i.getCurrItem()===t&&(i.removeItem(),e.p1=t.p1,n.remove(t),n.update([Math.min(e.p0.x,e.p1.x),Math.min(e.p0.y,e.p1.y),Math.max(e.p0.x,e.p1.x),Math.max(e.p0.y,e.p1.y)],e))},t.prototype.getPointsInTriangle_=function(e,t,i,n,r){for(var o=[],a=n.getInExtent([Math.min(e.x,t.x,i.x),Math.min(e.y,t.y,i.y),Math.max(e.x,t.x,i.x),Math.max(e.y,t.y,i.y)]),s=0,c=a.length;s<c;++s)for(var l in a[s]){var u=a[s][l];"object"!=typeof u||r&&!u.reflex||u.x===e.x&&u.y===e.y||u.x===t.x&&u.y===t.y||u.x===i.x&&u.y===i.y||-1!==o.indexOf(u)||!Bn([e.x,e.y,t.x,t.y,i.x,i.y],0,6,2,u.x,u.y)||o.push(u)}return o},t.prototype.getIntersections_=function(e,t,i){for(var n=e.p0,r=e.p1,o=t.getInExtent([Math.min(n.x,r.x),Math.min(n.y,r.y),Math.max(n.x,r.x),Math.max(n.y,r.y)]),a=[],s=0,c=o.length;s<c;++s){var l=o[s];e!==l&&(i||l.p0!==r||l.p1!==n)&&this.calculateIntersection_(n,r,l.p0,l.p1,i)&&a.push(l)}return a},t.prototype.calculateIntersection_=function(e,t,i,n,r){var o=(n.y-i.y)*(t.x-e.x)-(n.x-i.x)*(t.y-e.y);if(0!==o){var a=((n.x-i.x)*(e.y-i.y)-(n.y-i.y)*(e.x-i.x))/o,s=((t.x-e.x)*(e.y-i.y)-(t.y-e.y)*(e.x-i.x))/o;if(!r&&a>Kc&&a<1-Kc&&s>Kc&&s<1-Kc||r&&a>=0&&a<=1&&s>=0&&s<=1)return[e.x+a*(t.x-e.x),e.y+a*(t.y-e.y)]}},t.prototype.diagonalIsInside_=function(e,t,i,n,r){if(void 0===t.reflex||void 0===n.reflex)return!1;var o=(i.x-n.x)*(t.y-n.y)>(i.y-n.y)*(t.x-n.x),a=(r.x-n.x)*(t.y-n.y)<(r.y-n.y)*(t.x-n.x),s=(e.x-t.x)*(n.y-t.y)>(e.y-t.y)*(n.x-t.x),c=(i.x-t.x)*(n.y-t.y)<(i.y-t.y)*(n.x-t.x),l=n.reflex?a||o:a&&o,u=t.reflex?c||s:c&&s;return l&&u},t.prototype.drawMultiPolygon=function(e,t){var i,n,r,o,a=e.getEndss(),s=e.getStride(),c=this.indices.length,l=this.lineStringReplay.getCurrentIndex(),u=e.getFlatCoordinates(),h=0;for(i=0,n=a.length;i<n;++i){var d=a[i];if(d.length>0){var p=Di(u,h,d[0],s,-this.origin[0],-this.origin[1]);if(p.length){var m=[],f=void 0;for(r=1,o=d.length;r<o;++r)d[r]!==d[r-1]&&(f=Di(u,d[r-1],d[r],s,-this.origin[0],-this.origin[1]),m.push(f));this.lineStringReplay.drawPolygonCoordinates(p,m,s),this.drawCoordinates_(p,m,s)}}h=d[d.length-1]}this.indices.length>c&&(this.startIndices.push(c),this.startIndicesFeature.push(t),this.state_.changed&&(this.styleIndices_.push(c),this.state_.changed=!1)),this.lineStringReplay.getCurrentIndex()>l&&this.lineStringReplay.setPolygonStyle(t,l)},t.prototype.drawPolygon=function(e,t){var i=e.getEnds(),n=e.getStride();if(i.length>0){var r=e.getFlatCoordinates().map(Number),o=Di(r,0,i[0],n,-this.origin[0],-this.origin[1]);if(o.length){var a,s,c,l=[];for(a=1,s=i.length;a<s;++a)i[a]!==i[a-1]&&(c=Di(r,i[a-1],i[a],n,-this.origin[0],-this.origin[1]),l.push(c));this.startIndices.push(this.indices.length),this.startIndicesFeature.push(t),this.state_.changed&&(this.styleIndices_.push(this.indices.length),this.state_.changed=!1),this.lineStringReplay.setPolygonStyle(t),this.lineStringReplay.drawPolygonCoordinates(o,l,n),this.drawCoordinates_(o,l,n)}}},t.prototype.finish=function(e){this.verticesBuffer=new Jc(this.vertices),this.indicesBuffer=new Jc(this.indices),this.startIndices.push(this.indices.length),this.lineStringReplay.finish(e),0===this.styleIndices_.length&&this.styles_.length>0&&(this.styles_=[]),this.vertices=null,this.indices=null},t.prototype.getDeleteResourcesFunction=function(e){var t=this.verticesBuffer,i=this.indicesBuffer,n=this.lineStringReplay.getDeleteResourcesFunction(e);return function(){e.deleteBuffer(t),e.deleteBuffer(i),n()}},t.prototype.setUpProgram=function(e,t,i,n){var r,o=t.getProgram(Dl,Al);return this.defaultLocations_?r=this.defaultLocations_:(r=new Il(e,o),this.defaultLocations_=r),t.useProgram(o),e.enableVertexAttribArray(r.a_position),e.vertexAttribPointer(r.a_position,2,5126,!1,8,0),r},t.prototype.shutDownProgram=function(e,t){e.disableVertexAttribArray(t.a_position)},t.prototype.drawReplay=function(e,t,i,n){var r,o,a,s,c=e.getParameter(e.DEPTH_FUNC),l=e.getParameter(e.DEPTH_WRITEMASK);if(n||(e.enable(e.DEPTH_TEST),e.depthMask(!0),e.depthFunc(e.NOTEQUAL)),d(i))for(a=this.startIndices[this.startIndices.length-1],r=this.styleIndices_.length-1;r>=0;--r)o=this.styleIndices_[r],s=this.styles_[r],this.setFillStyle_(e,s),this.drawElements(e,t,o,a),a=o;else this.drawReplaySkipping_(e,t,i);n||(e.disable(e.DEPTH_TEST),e.clear(e.DEPTH_BUFFER_BIT),e.depthMask(l),e.depthFunc(c))},t.prototype.drawHitDetectionReplayOneByOne=function(e,t,i,n,o){var a,s,c,l,u,h,d;for(d=this.startIndices.length-2,c=this.startIndices[d+1],a=this.styleIndices_.length-1;a>=0;--a)for(l=this.styles_[a],this.setFillStyle_(e,l),u=this.styleIndices_[a];d>=0&&this.startIndices[d]>=u;){if(s=this.startIndices[d],void 0===i[r(h=this.startIndicesFeature[d])]&&h.getGeometry()&&(void 0===o||Si(o,h.getGeometry().getExtent()))){e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),this.drawElements(e,t,s,c);var p=n(h);if(p)return p}d--,c=s}},t.prototype.drawReplaySkipping_=function(e,t,i){var n,o,a,s,c,l,u;for(l=this.startIndices.length-2,a=o=this.startIndices[l+1],n=this.styleIndices_.length-1;n>=0;--n){for(s=this.styles_[n],this.setFillStyle_(e,s),c=this.styleIndices_[n];l>=0&&this.startIndices[l]>=c;)u=this.startIndices[l],i[r(this.startIndicesFeature[l])]&&(o!==a&&(this.drawElements(e,t,o,a),e.clear(e.DEPTH_BUFFER_BIT)),a=u),l--,o=u;o!==a&&(this.drawElements(e,t,o,a),e.clear(e.DEPTH_BUFFER_BIT)),o=a=c}},t.prototype.setFillStyle_=function(e,t){e.uniform4fv(this.defaultLocations_.u_color,t)},t.prototype.setFillStrokeStyle=function(e,t){var i=e?e.getColor():[0,0,0,0];if(i=i instanceof CanvasGradient||i instanceof CanvasPattern?jc:zo(i).map((function(e,t){return 3!=t?e/255:e}))||jc,this.state_.fillColor&&ze(i,this.state_.fillColor)||(this.state_.fillColor=i,this.state_.changed=!0,this.styles_.push(i)),t)this.lineStringReplay.setFillStrokeStyle(null,t);else{var n=new ga({color:[0,0,0,0],width:0});this.lineStringReplay.setFillStrokeStyle(null,n)}},t}(Hc),xl=function(e,t){this.space_=t,this.emptyBlocks_=[{x:0,y:0,width:e,height:e}],this.entries_={},this.context_=nr(e,e),this.canvas_=this.context_.canvas};xl.prototype.get=function(e){return this.entries_[e]||null},xl.prototype.add=function(e,t,i,n,r){for(var o=0,a=this.emptyBlocks_.length;o<a;++o){var s=this.emptyBlocks_[o];if(s.width>=t+this.space_&&s.height>=i+this.space_){var c={offsetX:s.x+this.space_,offsetY:s.y+this.space_,image:this.canvas_};return this.entries_[e]=c,n.call(r,this.context_,s.x+this.space_,s.y+this.space_),this.split_(o,s,t+this.space_,i+this.space_),c}}return null},xl.prototype.split_=function(e,t,i,n){var r,o;t.width-i>t.height-n?(r={x:t.x+i,y:t.y,width:t.width-i,height:t.height},o={x:t.x,y:t.y+n,width:i,height:t.height-n},this.updateBlocks_(e,r,o)):(r={x:t.x+i,y:t.y,width:t.width-i,height:n},o={x:t.x,y:t.y+n,width:t.width,height:t.height-n},this.updateBlocks_(e,r,o))},xl.prototype.updateBlocks_=function(e,t,i){var n=[e,1];t.width>0&&t.height>0&&n.push(t),i.width>0&&i.height>0&&n.push(i),this.emptyBlocks_.splice.apply(this.emptyBlocks_,n)};var El=function(e){var t=e||{};this.currentSize_=void 0!==t.initialSize?t.initialSize:256,this.maxSize_=void 0!==t.maxSize?t.maxSize:void 0!==L?L:2048,this.space_=void 0!==t.space?t.space:1,this.atlases_=[new xl(this.currentSize_,this.space_)],this.currentHitSize_=this.currentSize_,this.hitAtlases_=[new xl(this.currentHitSize_,this.space_)]};El.prototype.getInfo=function(e){var t=this.getInfo_(this.atlases_,e);if(!t)return null;var i=this.getInfo_(this.hitAtlases_,e);return this.mergeInfos_(t,i)},El.prototype.getInfo_=function(e,t){for(var i=0,n=e.length;i<n;++i){var r=e[i].get(t);if(r)return r}return null},El.prototype.mergeInfos_=function(e,t){return{offsetX:e.offsetX,offsetY:e.offsetY,image:e.image,hitImage:t.image}},El.prototype.add=function(e,t,i,n,r,o){if(t+this.space_>this.maxSize_||i+this.space_>this.maxSize_)return null;var a=this.add_(!1,e,t,i,n,o);if(!a)return null;var s=void 0!==r?r:I,c=this.add_(!0,e,t,i,s,o);return this.mergeInfos_(a,c)},El.prototype.add_=function(e,t,i,n,r,o){var a,s,c,l,u=e?this.hitAtlases_:this.atlases_;for(c=0,l=u.length;c<l;++c){if(s=(a=u[c]).add(t,i,n,r,o))return s;if(!s&&c===l-1){var h=void 0;e?(h=Math.min(2*this.currentHitSize_,this.maxSize_),this.currentHitSize_=h):(h=Math.min(2*this.currentSize_,this.maxSize_),this.currentSize_=h),a=new xl(h,this.space_),u.push(a),++l}}return null};var bl=[1,1],Ol={Circle:$c,Image:ll,LineString:Tl,Polygon:Rl,Text:function(e){function t(t,i){e.call(this,t,i),this.images_=[],this.textures_=[],this.measureCanvas_=nr(0,0).canvas,this.state_={strokeColor:null,lineCap:void 0,lineDash:null,lineDashOffset:void 0,lineJoin:void 0,lineWidth:0,miterLimit:void 0,fillColor:null,font:void 0,scale:void 0},this.text_="",this.textAlign_=void 0,this.textBaseline_=void 0,this.offsetX_=void 0,this.offsetY_=void 0,this.atlases_={},this.currAtlas_=void 0,this.scale=1,this.opacity=1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawText=function(e,t){if(this.text_){var i=null,n=2,o=2;switch(e.getType()){case _i.POINT:case _i.MULTI_POINT:n=(i=e.getFlatCoordinates()).length,o=e.getStride();break;case _i.CIRCLE:i=e.getCenter();break;case _i.LINE_STRING:i=e.getFlatMidpoint();break;case _i.MULTI_LINE_STRING:n=(i=e.getFlatMidpoints()).length;break;case _i.POLYGON:i=e.getFlatInteriorPoint();break;case _i.MULTI_POLYGON:n=(i=e.getFlatInteriorPoints()).length}this.startIndices.push(this.indices.length),this.startIndicesFeature.push(t);var a,s,c,l,u,h,d,p,m=this.currAtlas_,f=this.text_.split("\n"),g=this.getTextSize_(f),S=Math.round(g[0]*this.textAlign_-this.offsetX_),y=Math.round(g[1]*this.textBaseline_-this.offsetY_),v=this.state_.lineWidth/2*this.state_.scale;for(a=0,s=f.length;a<s;++a)for(u=0,h=m.height*a,c=0,l=(d=f[a].split("")).length;c<l;++c){if(p=m.atlas.getInfo(d[c])){var _=p.image;this.anchorX=S-u,this.anchorY=y-h,this.originX=0===c?p.offsetX-v:p.offsetX,this.originY=p.offsetY,this.height=m.height,this.width=0===c||c===d.length-1?m.width[d[c]]+v:m.width[d[c]],this.imageHeight=_.height,this.imageWidth=_.width,0===this.images_.length?this.images_.push(_):r(this.images_[this.images_.length-1])!=r(_)&&(this.groupIndices.push(this.indices.length),this.images_.push(_)),this.drawText_(i,0,n,o)}u+=this.width}}},t.prototype.getTextSize_=function(e){var t=this,i=this.currAtlas_,n=e.length*i.height;return[e.map((function(e){for(var n=0,r=0,o=e.length;r<o;++r){var a=e[r];i.width[a]||t.addCharToAtlas_(a),n+=i.width[a]?i.width[a]:0}return n})).reduce((function(e,t){return Math.max(e,t)})),n]},t.prototype.drawText_=function(e,t,i,n){for(var r=t,o=i;r<o;r+=n)this.drawCoordinates(e,t,i,n)},t.prototype.addCharToAtlas_=function(e){if(1===e.length){var t=this.currAtlas_,i=this.state_,n=this.measureCanvas_.getContext("2d");n.font=i.font;var r=Math.ceil(n.measureText(e).width*i.scale);t.atlas.add(e,r,t.height,(function(t,n,r){t.font=i.font,t.fillStyle=i.fillColor,t.strokeStyle=i.strokeColor,t.lineWidth=i.lineWidth,t.lineCap=i.lineCap,t.lineJoin=i.lineJoin,t.miterLimit=i.miterLimit,t.textAlign="left",t.textBaseline="top",te&&i.lineDash&&(t.setLineDash(i.lineDash),t.lineDashOffset=i.lineDashOffset),1!==i.scale&&t.setTransform(i.scale,0,0,i.scale,0,0),i.strokeColor&&t.strokeText(e,n,r),i.fillColor&&t.fillText(e,n,r)}))&&(t.width[e]=r)}},t.prototype.finish=function(t){var i=t.getGL();this.groupIndices.push(this.indices.length),this.hitDetectionGroupIndices=this.groupIndices,this.verticesBuffer=new Jc(this.vertices),this.indicesBuffer=new Jc(this.indices),this.createTextures(this.textures_,this.images_,{},i),this.state_={strokeColor:null,lineCap:void 0,lineDash:null,lineDashOffset:void 0,lineJoin:void 0,lineWidth:0,miterLimit:void 0,fillColor:null,font:void 0,scale:void 0},this.text_="",this.textAlign_=void 0,this.textBaseline_=void 0,this.offsetX_=void 0,this.offsetY_=void 0,this.images_=null,this.atlases_={},this.currAtlas_=void 0,e.prototype.finish.call(this,t)},t.prototype.setTextStyle=function(e){var t=this.state_,i=e.getFill(),n=e.getStroke();if(e&&e.getText()&&(i||n)){if(i){var r=i.getColor();t.fillColor=Xo(r||jc)}else t.fillColor=null;if(n){var o=n.getColor();t.strokeColor=Xo(o||Yc),t.lineWidth=n.getWidth()||1,t.lineCap=n.getLineCap()||"round",t.lineDashOffset=n.getLineDashOffset()||0,t.lineJoin=n.getLineJoin()||"round",t.miterLimit=n.getMiterLimit()||10;var a=n.getLineDash();t.lineDash=a?a.slice():Xc}else t.strokeColor=null,t.lineWidth=0;t.font=e.getFont()||"10px sans-serif",t.scale=e.getScale()||1,this.text_=e.getText();var s=nc[e.getTextAlign()],c=nc[e.getTextBaseline()];this.textAlign_=void 0===s?.5:s,this.textBaseline_=void 0===c?.5:c,this.offsetX_=e.getOffsetX()||0,this.offsetY_=e.getOffsetY()||0,this.rotateWithView=!!e.getRotateWithView(),this.rotation=e.getRotation()||0,this.currAtlas_=this.getAtlas_(t)}else this.text_=""},t.prototype.getAtlas_=function(e){var t=[];for(var i in e)(e[i]||0===e[i])&&(Array.isArray(e[i])?t=t.concat(e[i]):t.push(e[i]));var n=this.calculateHash_(t);if(!this.atlases_[n]){var r=this.measureCanvas_.getContext("2d");r.font=e.font;var o=Math.ceil((1.5*r.measureText("M").width+e.lineWidth/2)*e.scale);this.atlases_[n]={atlas:new El({space:e.lineWidth+1}),width:{},height:o}}return this.atlases_[n]},t.prototype.calculateHash_=function(e){for(var t="",i=0,n=e.length;i<n;++i)t+=e[i];return t},t.prototype.getTextures=function(e){return this.textures_},t.prototype.getHitDetectionTextures=function(){return this.textures_},t}(cl)},ql=function(e){function t(t,i,n){e.call(this),this.maxExtent_=i,this.tolerance_=t,this.renderBuffer_=n,this.replaysByZIndex_={}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addDeclutter=function(e){return[]},t.prototype.getDeleteResourcesFunction=function(e){var t,i=[];for(t in this.replaysByZIndex_){var n=this.replaysByZIndex_[t];for(var r in n)i.push(n[r].getDeleteResourcesFunction(e))}return function(){for(var e,t=arguments,n=i.length,r=0;r<n;r++)e=i[r].apply(this,t);return e}},t.prototype.finish=function(e){var t;for(t in this.replaysByZIndex_){var i=this.replaysByZIndex_[t];for(var n in i)i[n].finish(e)}},t.prototype.getReplay=function(e,t){var i=void 0!==e?e.toString():"0",n=this.replaysByZIndex_[i];void 0===n&&(n={},this.replaysByZIndex_[i]=n);var r=n[t];return void 0===r&&(r=new(0,Ol[t])(this.tolerance_,this.maxExtent_),n[t]=r),r},t.prototype.isEmpty=function(){return d(this.replaysByZIndex_)},t.prototype.replay=function(e,t,i,n,r,o,a,s){var c,l,u,h,d,p,m=Object.keys(this.replaysByZIndex_).map(Number);for(m.sort(Ve),c=0,l=m.length;c<l;++c)for(d=this.replaysByZIndex_[m[c].toString()],u=0,h=ic.length;u<h;++u)p=d[ic[u]],void 0!==p&&p.replay(e,t,i,n,r,o,a,s,void 0,!1)},t.prototype.replayHitDetection_=function(e,t,i,n,r,o,a,s,c,l,u){var h,d,p,m,f,g,S=Object.keys(this.replaysByZIndex_).map(Number);for(S.sort((function(e,t){return t-e})),h=0,d=S.length;h<d;++h)for(m=this.replaysByZIndex_[S[h].toString()],p=ic.length-1;p>=0;--p)if(void 0!==(f=m[ic[p]])&&(g=f.replay(e,t,i,n,r,o,a,s,c,l,u)))return g},t.prototype.forEachFeatureAtCoordinate=function(e,t,i,n,r,o,a,s,c,l){var u,h=t.getGL();return h.bindFramebuffer(h.FRAMEBUFFER,t.getHitDetectionFramebuffer()),void 0!==this.renderBuffer_&&(u=Ut(Qt(e),n*this.renderBuffer_)),this.replayHitDetection_(t,e,n,r,bl,a,s,c,(function(e){var t=new Uint8Array(4);if(h.readPixels(0,0,1,1,h.RGBA,h.UNSIGNED_BYTE,t),t[3]>0){var i=l(e);if(i)return i}}),!0,u)},t.prototype.hasFeatureAtCoordinate=function(e,t,i,n,r,o,a,s,c){var l=t.getGL();return l.bindFramebuffer(l.FRAMEBUFFER,t.getHitDetectionFramebuffer()),void 0!==this.replayHitDetection_(t,e,n,r,bl,a,s,c,(function(e){var t=new Uint8Array(4);return l.readPixels(0,0,1,1,l.RGBA,l.UNSIGNED_BYTE,t),t[3]>0}),!1)},t}(ws),Fl=function(e){function t(t,i,n,r,o,a,s){e.call(this),this.context_=t,this.center_=i,this.extent_=a,this.pixelRatio_=s,this.size_=o,this.rotation_=r,this.resolution_=n,this.imageStyle_=null,this.fillStyle_=null,this.strokeStyle_=null,this.textStyle_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.drawText_=function(e,t){var i=this.context_,n=e.getReplay(0,Ns.TEXT);n.setTextStyle(this.textStyle_),n.drawText(t,null),n.finish(i),n.replay(this.context_,this.center_,this.resolution_,this.rotation_,this.size_,this.pixelRatio_,1,{},void 0,!1),n.getDeleteResourcesFunction(i)()},t.prototype.setStyle=function(e){this.setFillStrokeStyle(e.getFill(),e.getStroke()),this.setImageStyle(e.getImage()),this.setTextStyle(e.getText())},t.prototype.drawGeometry=function(e){switch(e.getType()){case _i.POINT:this.drawPoint(e,null);break;case _i.LINE_STRING:this.drawLineString(e,null);break;case _i.POLYGON:this.drawPolygon(e,null);break;case _i.MULTI_POINT:this.drawMultiPoint(e,null);break;case _i.MULTI_LINE_STRING:this.drawMultiLineString(e,null);break;case _i.MULTI_POLYGON:this.drawMultiPolygon(e,null);break;case _i.GEOMETRY_COLLECTION:this.drawGeometryCollection(e,null);break;case _i.CIRCLE:this.drawCircle(e,null)}},t.prototype.drawFeature=function(e,t){var i=t.getGeometryFunction()(e);i&&Si(this.extent_,i.getExtent())&&(this.setStyle(t),this.drawGeometry(i))},t.prototype.drawGeometryCollection=function(e,t){var i,n,r=e.getGeometriesArray();for(i=0,n=r.length;i<n;++i)this.drawGeometry(r[i])},t.prototype.drawPoint=function(e,t){var i=this.context_,n=new ql(1,this.extent_),r=n.getReplay(0,Ns.IMAGE);r.setImageStyle(this.imageStyle_),r.drawPoint(e,t),r.finish(i),r.replay(this.context_,this.center_,this.resolution_,this.rotation_,this.size_,this.pixelRatio_,1,{},void 0,!1),r.getDeleteResourcesFunction(i)(),this.textStyle_&&this.drawText_(n,e)},t.prototype.drawMultiPoint=function(e,t){var i=this.context_,n=new ql(1,this.extent_),r=n.getReplay(0,Ns.IMAGE);r.setImageStyle(this.imageStyle_),r.drawMultiPoint(e,t),r.finish(i),r.replay(this.context_,this.center_,this.resolution_,this.rotation_,this.size_,this.pixelRatio_,1,{},void 0,!1),r.getDeleteResourcesFunction(i)(),this.textStyle_&&this.drawText_(n,e)},t.prototype.drawLineString=function(e,t){var i=this.context_,n=new ql(1,this.extent_),r=n.getReplay(0,Ns.LINE_STRING);r.setFillStrokeStyle(null,this.strokeStyle_),r.drawLineString(e,t),r.finish(i),r.replay(this.context_,this.center_,this.resolution_,this.rotation_,this.size_,this.pixelRatio_,1,{},void 0,!1),r.getDeleteResourcesFunction(i)(),this.textStyle_&&this.drawText_(n,e)},t.prototype.drawMultiLineString=function(e,t){var i=this.context_,n=new ql(1,this.extent_),r=n.getReplay(0,Ns.LINE_STRING);r.setFillStrokeStyle(null,this.strokeStyle_),r.drawMultiLineString(e,t),r.finish(i),r.replay(this.context_,this.center_,this.resolution_,this.rotation_,this.size_,this.pixelRatio_,1,{},void 0,!1),r.getDeleteResourcesFunction(i)(),this.textStyle_&&this.drawText_(n,e)},t.prototype.drawPolygon=function(e,t){var i=this.context_,n=new ql(1,this.extent_),r=n.getReplay(0,Ns.POLYGON);r.setFillStrokeStyle(this.fillStyle_,this.strokeStyle_),r.drawPolygon(e,t),r.finish(i),r.replay(this.context_,this.center_,this.resolution_,this.rotation_,this.size_,this.pixelRatio_,1,{},void 0,!1),r.getDeleteResourcesFunction(i)(),this.textStyle_&&this.drawText_(n,e)},t.prototype.drawMultiPolygon=function(e,t){var i=this.context_,n=new ql(1,this.extent_),r=n.getReplay(0,Ns.POLYGON);r.setFillStrokeStyle(this.fillStyle_,this.strokeStyle_),r.drawMultiPolygon(e,t),r.finish(i),r.replay(this.context_,this.center_,this.resolution_,this.rotation_,this.size_,this.pixelRatio_,1,{},void 0,!1),r.getDeleteResourcesFunction(i)(),this.textStyle_&&this.drawText_(n,e)},t.prototype.drawCircle=function(e,t){var i=this.context_,n=new ql(1,this.extent_),r=n.getReplay(0,Ns.CIRCLE);r.setFillStrokeStyle(this.fillStyle_,this.strokeStyle_),r.drawCircle(e,t),r.finish(i),r.replay(this.context_,this.center_,this.resolution_,this.rotation_,this.size_,this.pixelRatio_,1,{},void 0,!1),r.getDeleteResourcesFunction(i)(),this.textStyle_&&this.drawText_(n,e)},t.prototype.setImageStyle=function(e){this.imageStyle_=e},t.prototype.setFillStrokeStyle=function(e,t){this.fillStyle_=e,this.strokeStyle_=t},t.prototype.setTextStyle=function(e){this.textStyle_=e},t}(vs),Ml=new Vc("precision mediump float;\nvarying vec2 v_texCoord;\n\n\nuniform float u_opacity;\nuniform sampler2D u_texture;\n\nvoid main(void) {\n  vec4 texColor = texture2D(u_texture, v_texCoord);\n  gl_FragColor.rgb = texColor.rgb;\n  gl_FragColor.a = texColor.a * u_opacity;\n}\n"),Ll=new kc("varying vec2 v_texCoord;\n\n\nattribute vec2 a_position;\nattribute vec2 a_texCoord;\n\nuniform mat4 u_texCoordMatrix;\nuniform mat4 u_projectionMatrix;\n\nvoid main(void) {\n  gl_Position = u_projectionMatrix * vec4(a_position, 0., 1.);\n  v_texCoord = (u_texCoordMatrix * vec4(a_texCoord, 0., 1.)).st;\n}\n\n\n"),wl=function(e,t){this.u_texCoordMatrix=e.getUniformLocation(t,"u_texCoordMatrix"),this.u_projectionMatrix=e.getUniformLocation(t,"u_projectionMatrix"),this.u_opacity=e.getUniformLocation(t,"u_opacity"),this.u_texture=e.getUniformLocation(t,"u_texture"),this.a_position=e.getAttribLocation(t,"a_position"),this.a_texCoord=e.getAttribLocation(t,"a_texCoord")},Nl=function(e){function t(t,i){e.call(this,i),this.mapRenderer=t,this.arrayBuffer_=new Jc([-1,-1,0,0,1,-1,1,0,-1,1,0,1,1,1,1,1]),this.texture=null,this.framebuffer=null,this.framebufferDimension=void 0,this.texCoordMatrix=[1,0,0,1,0,0],this.projectionMatrix=[1,0,0,1,0,0],this.tmpMat4_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],this.defaultLocations_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.bindFramebuffer=function(e,t){var i=this.mapRenderer.getGL();if(void 0===this.framebufferDimension||this.framebufferDimension!=t){var n=function(e,t,i){e.isContextLost()||(e.deleteFramebuffer(t),e.deleteTexture(i))}.bind(null,i,this.framebuffer,this.texture);e.postRenderFunctions.push(n);var r=al(i,t,t),o=i.createFramebuffer();i.bindFramebuffer(36160,o),i.framebufferTexture2D(36160,36064,H,r,0),this.texture=r,this.framebuffer=o,this.framebufferDimension=t}else i.bindFramebuffer(36160,this.framebuffer)},t.prototype.composeFrame=function(e,t,i){this.dispatchComposeEvent_(nt,i,e),i.bindBuffer(34962,this.arrayBuffer_);var n,r=i.getGL(),o=i.getProgram(Ml,Ll);this.defaultLocations_?n=this.defaultLocations_:(n=new wl(r,o),this.defaultLocations_=n),i.useProgram(o)&&(r.enableVertexAttribArray(n.a_position),r.vertexAttribPointer(n.a_position,2,5126,!1,16,0),r.enableVertexAttribArray(n.a_texCoord),r.vertexAttribPointer(n.a_texCoord,2,5126,!1,16,8),r.uniform1i(n.u_texture,0)),r.uniformMatrix4fv(n.u_texCoordMatrix,!1,zc(this.tmpMat4_,this.getTexCoordMatrix())),r.uniformMatrix4fv(n.u_projectionMatrix,!1,zc(this.tmpMat4_,this.getProjectionMatrix())),r.uniform1f(n.u_opacity,t.opacity),r.bindTexture(H,this.getTexture()),r.drawArrays(5,0,4),this.dispatchComposeEvent_(it,i,e)},t.prototype.dispatchComposeEvent_=function(e,t,i){var n=this.getLayer();if(n.hasListener(e)){var r=i.viewState,o=r.resolution,a=i.pixelRatio,s=i.extent,c=r.center,l=r.rotation,u=i.size,h=new Fl(t,c,o,l,u,s,a),d=new ys(e,h,i,null,t);n.dispatchEvent(d)}},t.prototype.getTexCoordMatrix=function(){return this.texCoordMatrix},t.prototype.getTexture=function(){return this.texture},t.prototype.getProjectionMatrix=function(){return this.projectionMatrix},t.prototype.handleWebGLContextLost=function(){this.texture=null,this.framebuffer=null,this.framebufferDimension=void 0},t.prototype.prepareFrame=function(e,t,n){return i()},t.prototype.forEachLayerAtPixel=function(e,t,n,r){return i()},t}(Es),Bl=function(e){function t(t,i){e.call(this,t,i),this.image_=null,this.hitCanvasContext_=null,this.hitTransformationMatrix_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createTexture_=function(e){var t=e.getImage();return sl(this.mapRenderer.getGL(),t,33071,33071)},t.prototype.prepareFrame=function(e,t,i){var n=this.mapRenderer.getGL(),r=e.pixelRatio,o=e.viewState,a=o.center,s=o.resolution,c=o.rotation,l=this.image_,u=this.texture,h=this.getLayer().getSource(),d=e.viewHints,p=e.extent;if(void 0!==t.extent&&(p=pi(p,t.extent)),!d[Tt]&&!d[Dt]&&!yi(p)){var m=o.projection,f=h.getImage(p,s,r,m);if(f&&this.loadImage(f)&&(l=f,u=this.createTexture_(f),this.texture)){var g=function(e,t){e.isContextLost()||e.deleteTexture(t)}.bind(null,n,this.texture);e.postRenderFunctions.push(g)}}if(l){var S=this.mapRenderer.getContext().getCanvas();this.updateProjectionMatrix_(S.width,S.height,r,a,s,c,l.getExtent()),this.hitTransformationMatrix_=null;var y=this.texCoordMatrix;on(y),hn(y,1,-1),dn(y,0,-1),this.image_=l,this.texture=u}return!!l},t.prototype.updateProjectionMatrix_=function(e,t,i,n,r,o,a){var s=e*r,c=t*r,l=this.projectionMatrix;on(l),hn(l,2*i/s,2*i/c),un(l,-o),dn(l,a[0]-n[0],a[1]-n[1]),hn(l,(a[2]-a[0])/2,(a[3]-a[1])/2),dn(l,1,1)},t.prototype.forEachLayerAtPixel=function(e,t,i,n){if(this.image_&&this.image_.getImage()){var r=[this.image_.getImage().width,this.image_.getImage().height];this.hitTransformationMatrix_||(this.hitTransformationMatrix_=this.getHitTransformationMatrix_(t.size,r));var o=ln(this.hitTransformationMatrix_,e.slice());if(!(o[0]<0||o[0]>r[0]||o[1]<0||o[1]>r[1])){this.hitCanvasContext_||(this.hitCanvasContext_=nr(1,1)),this.hitCanvasContext_.clearRect(0,0,1,1),this.hitCanvasContext_.drawImage(this.image_.getImage(),o[0],o[1],1,1,0,0,1,1);var a=this.hitCanvasContext_.getImageData(0,0,1,1).data;return a[3]>0?i.call(n,this.getLayer(),a):void 0}}},t.prototype.getHitTransformationMatrix_=function(e,t){var i=[1,0,0,1,0,0];dn(i,-1,-1),hn(i,2/e[0],2/e[1]),dn(i,0,e[1]),hn(i,1,-1);var n=mn(this.projectionMatrix.slice()),r=[1,0,0,1,0,0];return dn(r,0,t[1]),hn(r,1,-1),hn(r,t[0]/2,t[1]/2),dn(r,1,1),an(r,n),an(r,i),r},t}(Nl);Bl.handles=function(e){return e.getType()===Bo.IMAGE},Bl.create=function(e,t){return new Bl(e,t)};var Vl=function(e){function t(t){e.call(this,t);var i=t.getViewport();this.canvas_=document.createElement("canvas"),this.canvas_.style.width="100%",this.canvas_.style.height="100%",this.canvas_.style.display="block",this.canvas_.className=vr,i.insertBefore(this.canvas_,i.childNodes[0]||null),this.clipTileCanvasWidth_=0,this.clipTileCanvasHeight_=0,this.clipTileContext_=nr(),this.renderedVisible_=!0,this.gl_=X(this.canvas_,{antialias:!0,depth:!0,failIfMajorPerformanceCaveat:!0,preserveDrawingBuffer:!1,stencil:!0}),this.context_=new rl(this.canvas_,this.gl_),S(this.canvas_,nl.LOST,this.handleWebGLContextLost,this),S(this.canvas_,nl.RESTORED,this.handleWebGLContextRestored,this),this.textureCache_=new Ko,this.focus_=null,this.tileTextureQueue_=new ct(function(e){var t=e[1],i=e[2],n=t[0]-this.focus_[0],r=t[1]-this.focus_[1];return 65536*Math.log(i)+Math.sqrt(n*n+r*r)/i}.bind(this),(function(e){return e[0].getKey()})),this.loadNextTileTexture_=function(e,t){if(!this.tileTextureQueue_.isEmpty()){this.tileTextureQueue_.reprioritize();var i=this.tileTextureQueue_.dequeue(),n=i[0],r=i[3],o=i[4];this.bindTileTexture(n,r,o,U,U)}return!1}.bind(this),this.textureCacheFrameMarkerCount_=0,this.initializeGL_()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.bindTileTexture=function(e,t,i,n,r){var o=this.getGL(),a=e.getKey();if(this.textureCache_.containsKey(a)){var s=this.textureCache_.get(a);o.bindTexture(H,s.texture),s.magFilter!=n&&(o.texParameteri(H,10240,n),s.magFilter=n),s.minFilter!=r&&(o.texParameteri(H,10241,r),s.minFilter=r)}else{var c=o.createTexture(),l=e;if(o.bindTexture(H,c),i>0){var u=this.clipTileContext_.canvas,h=this.clipTileContext_;this.clipTileCanvasWidth_!==t[0]||this.clipTileCanvasHeight_!==t[1]?(u.width=t[0],u.height=t[1],this.clipTileCanvasWidth_=t[0],this.clipTileCanvasHeight_=t[1]):h.clearRect(0,0,t[0],t[1]),h.drawImage(l.getImage(),i,i,t[0],t[1],0,0,t[0],t[1]),o.texImage2D(H,0,6408,6408,5121,u)}else o.texImage2D(H,0,6408,6408,5121,l.getImage());o.texParameteri(H,10240,n),o.texParameteri(H,10241,r),o.texParameteri(H,W,33071),o.texParameteri(H,z,33071),this.textureCache_.set(a,{texture:c,magFilter:n,minFilter:r})}},t.prototype.dispatchRenderEvent=function(e,t){var i=this.getMap();if(i.hasListener(e)){var n=this.context_,r=t.extent,o=t.size,a=t.viewState,s=t.pixelRatio,c=a.resolution,l=a.center,u=a.rotation,h=new Fl(n,l,c,u,o,r,s),d=new ys(e,h,t,null,n);i.dispatchEvent(d)}},t.prototype.disposeInternal=function(){var t=this.getGL();t.isContextLost()||this.textureCache_.forEach((function(e){e&&t.deleteTexture(e.texture)})),this.context_.dispose(),e.prototype.disposeInternal.call(this)},t.prototype.expireCache_=function(e,t){for(var i,n=this.getGL();this.textureCache_.getCount()-this.textureCacheFrameMarkerCount_>1024;){if(i=this.textureCache_.peekLast())n.deleteTexture(i.texture);else{if(+this.textureCache_.peekLastKey()==t.index)break;--this.textureCacheFrameMarkerCount_}this.textureCache_.pop()}},t.prototype.getContext=function(){return this.context_},t.prototype.getGL=function(){return this.gl_},t.prototype.getTileTextureQueue=function(){return this.tileTextureQueue_},t.prototype.handleWebGLContextLost=function(e){e.preventDefault(),this.textureCache_.clear(),this.textureCacheFrameMarkerCount_=0;var t=this.getLayerRenderers();for(var i in t)t[i].handleWebGLContextLost()},t.prototype.handleWebGLContextRestored=function(){this.initializeGL_(),this.getMap().render()},t.prototype.initializeGL_=function(){var e=this.gl_;e.activeTexture(33984),e.blendFuncSeparate(770,771,1,771),e.disable(2884),e.disable(2929),e.disable(3089),e.disable(2960)},t.prototype.isTileTextureLoaded=function(e){return this.textureCache_.containsKey(e.getKey())},t.prototype.renderFrame=function(e){var t=this.getContext(),i=this.getGL();if(i.isContextLost())return!1;if(!e)return this.renderedVisible_&&(this.canvas_.style.display="none",this.renderedVisible_=!1),!1;this.focus_=e.focus,this.textureCache_.set((-e.index).toString(),null),++this.textureCacheFrameMarkerCount_,this.dispatchRenderEvent(nt,e);var n=[],r=e.layerStatesArray;He(r,Ps);var o,a,s=e.viewState.resolution;for(o=0,a=r.length;o<a;++o){var c=r[o];Ir(c,s)&&c.sourceState==hr.READY&&this.getLayerRenderer(c.layer).prepareFrame(e,c,t)&&n.push(c)}var l=e.size[0]*e.pixelRatio,u=e.size[1]*e.pixelRatio;for(this.canvas_.width==l&&this.canvas_.height==u||(this.canvas_.width=l,this.canvas_.height=u),i.bindFramebuffer(36160,null),i.clearColor(0,0,0,0),i.clear(16384),i.enable(3042),i.viewport(0,0,this.canvas_.width,this.canvas_.height),o=0,a=n.length;o<a;++o){var h=n[o];this.getLayerRenderer(h.layer).composeFrame(e,h,t)}this.renderedVisible_||(this.canvas_.style.display="",this.renderedVisible_=!0),this.calculateMatrices2D(e),this.textureCache_.getCount()-this.textureCacheFrameMarkerCount_>1024&&e.postRenderFunctions.push(this.expireCache_.bind(this)),this.tileTextureQueue_.isEmpty()||(e.postRenderFunctions.push(this.loadNextTileTexture_),e.animate=!0),this.dispatchRenderEvent(it,e),this.scheduleRemoveUnusedLayerRenderers(e),this.scheduleExpireIconCache(e)},t.prototype.forEachFeatureAtCoordinate=function(e,t,i,n,r,o,a){var s;if(this.getGL().isContextLost())return!1;var c,l=t.viewState,u=t.layerStatesArray;for(c=u.length-1;c>=0;--c){var h=u[c],d=h.layer;if(Ir(h,l.resolution)&&o.call(a,d)&&(s=this.getLayerRenderer(d).forEachFeatureAtCoordinate(e,t,i,n)))return s}},t.prototype.hasFeatureAtCoordinate=function(e,t,i,n,r){var o=!1;if(this.getGL().isContextLost())return!1;var a,s=t.viewState,c=t.layerStatesArray;for(a=c.length-1;a>=0;--a){var l=c[a],u=l.layer;if(Ir(l,s.resolution)&&n.call(r,u)&&(o=this.getLayerRenderer(u).hasFeatureAtCoordinate(e,t)))return!0}return o},t.prototype.forEachLayerAtPixel=function(e,t,i,n,r,o,a){if(this.getGL().isContextLost())return!1;var s,c,l=t.viewState,u=t.layerStatesArray;for(c=u.length-1;c>=0;--c){var h=u[c],d=h.layer;if(Ir(h,l.resolution)&&o.call(r,d)&&(s=this.getLayerRenderer(d).forEachLayerAtPixel(e,t,n,r)))return s}},t}(As),kl=function(e){function t(t,i,n){e.call(this);var r=n||{};this.tileCoord=t,this.state=i,this.interimTile=null,this.key="",this.transition_=void 0===r.transition?250:r.transition,this.transitionStarts_={}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.changed=function(){this.dispatchEvent(E.CHANGE)},t.prototype.getKey=function(){return this.key+"/"+this.tileCoord},t.prototype.getInterimTile=function(){if(!this.interimTile)return this;var e=this.interimTile;do{if(e.getState()==at.LOADED)return e;e=e.interimTile}while(e);return this},t.prototype.refreshInterimChain=function(){if(this.interimTile){var e=this.interimTile,t=this;do{if(e.getState()==at.LOADED){e.interimTile=null;break}e.getState()==at.LOADING?t=e:e.getState()==at.IDLE?t.interimTile=e.interimTile:t=e,e=t.interimTile}while(e)}},t.prototype.getTileCoord=function(){return this.tileCoord},t.prototype.getState=function(){return this.state},t.prototype.setState=function(e){this.state=e,this.changed()},t.prototype.load=function(){},t.prototype.getAlpha=function(e,t){if(!this.transition_)return 1;var i=this.transitionStarts_[e];if(i){if(-1===i)return 1}else i=t,this.transitionStarts_[e]=i;var n=t-i+1e3/60;return n>=this.transition_?1:Lt(n/this.transition_)},t.prototype.inTransition=function(e){return!!this.transition_&&-1!==this.transitionStarts_[e]},t.prototype.endTransition=function(e){this.transition_&&(this.transitionStarts_[e]=-1)},t}(x),Gl=function(e){function t(t,i,n,r,o,a){e.call(this,t,i,a),this.crossOrigin_=r,this.src_=n,this.image_=new Image,null!==r&&(this.image_.crossOrigin=r),this.imageListenerKeys_=null,this.tileLoadFunction_=o}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.disposeInternal=function(){this.state==at.LOADING&&(this.unlistenImage_(),this.image_=Ul()),this.interimTile&&this.interimTile.dispose(),this.state=at.ABORT,this.changed(),e.prototype.disposeInternal.call(this)},t.prototype.getImage=function(){return this.image_},t.prototype.getKey=function(){return this.src_},t.prototype.handleImageError_=function(){this.state=at.ERROR,this.unlistenImage_(),this.image_=Ul(),this.changed()},t.prototype.handleImageLoad_=function(){var e=this.image_;e.naturalWidth&&e.naturalHeight?this.state=at.LOADED:this.state=at.EMPTY,this.unlistenImage_(),this.changed()},t.prototype.load=function(){this.state==at.ERROR&&(this.state=at.IDLE,this.image_=new Image,null!==this.crossOrigin_&&(this.image_.crossOrigin=this.crossOrigin_)),this.state==at.IDLE&&(this.state=at.LOADING,this.changed(),this.imageListenerKeys_=[y(this.image_,E.ERROR,this.handleImageError_,this),y(this.image_,E.LOAD,this.handleImageLoad_,this)],this.tileLoadFunction_(this,this.src_))},t.prototype.unlistenImage_=function(){this.imageListenerKeys_.forEach(_),this.imageListenerKeys_=null},t}(kl);function Ul(){var e=nr(1,1);return e.fillStyle="rgba(0,0,0,0)",e.fillRect(0,0,1,1),e.canvas}function Wl(e,t,i,n){return void 0!==n?(n[0]=e,n[1]=t,n[2]=i,n):[e,t,i]}function zl(e,t,i){return e+"/"+t+"/"+i}function Hl(e){return zl(e[0],e[1],e[2])}var jl=function(e){function t(t){e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.expireCache=function(e){for(;this.canExpireCache();){var t=this.peekLast(),i=t.tileCoord[0].toString();if(i in e&&e[i].contains(t.tileCoord))break;this.pop().dispose()}},t.prototype.pruneExceptNewestZ=function(){if(0!==this.getCount()){var e=function(e){return e.split("/").map(Number)}(this.peekFirstKey())[0];this.forEach((function(t){t.tileCoord[0]!==e&&(this.remove(Hl(t.tileCoord)),t.dispose())}),this)}},t}(Ko),Xl=[0,0,0],Yl=function(e){var t,i,n,r;if(this.minZoom=void 0!==e.minZoom?e.minZoom:0,this.resolutions_=e.resolutions,st((t=this.resolutions_,i=!0,n=function(e,t){return t-e}||Ve,t.every((function(e,r){if(0===r)return!0;var o=n(t[r-1],e);return!(o>0||i&&0===o)}))),17),!e.origins)for(var o=0,a=this.resolutions_.length-1;o<a;++o)if(r){if(this.resolutions_[o]/this.resolutions_[o+1]!==r){r=void 0;break}}else r=this.resolutions_[o]/this.resolutions_[o+1];this.zoomFactor_=r,this.maxZoom=this.resolutions_.length-1,this.origin_=void 0!==e.origin?e.origin:null,this.origins_=null,void 0!==e.origins&&(this.origins_=e.origins,st(this.origins_.length==this.resolutions_.length,20));var s=e.extent;void 0===s||this.origin_||this.origins_||(this.origin_=mi(s)),st(!this.origin_&&this.origins_||this.origin_&&!this.origins_,18),this.tileSizes_=null,void 0!==e.tileSizes&&(this.tileSizes_=e.tileSizes,st(this.tileSizes_.length==this.resolutions_.length,19)),this.tileSize_=void 0!==e.tileSize?e.tileSize:this.tileSizes_?null:ht,st(!this.tileSize_&&this.tileSizes_||this.tileSize_&&!this.tileSizes_,22),this.extent_=void 0!==s?s:null,this.fullTileRanges_=null,this.tmpSize_=[0,0],void 0!==e.sizes?this.fullTileRanges_=e.sizes.map((function(e,t){return new Fs(Math.min(0,e[0]),Math.max(e[0]-1,-1),Math.min(0,e[1]),Math.max(e[1]-1,-1))}),this):s&&this.calculateTileRanges_(s)};function Kl(e){var t=e.getDefaultTileGrid();return t||(t=function(e,t,i,n){return function(e,t,i,n){var r=void 0!==n?n:Vt.TOP_LEFT,o=Zl(e,t,i);return new Yl({extent:e,origin:ui(e,r),resolutions:o,tileSize:i})}(Ql(e),t,i,n)}(e),e.setDefaultTileGrid(t)),t}function Zl(e,t,i){for(var n=void 0!==t?t:ut,r=di(e),o=gi(e),a=mr(void 0!==i?i:ht),s=Math.max(o/a[0],r/a[1]),c=n+1,l=new Array(c),u=0;u<c;++u)l[u]=s/Math.pow(2,u);return l}function Ql(e){var t=(e=Zi(e)).getExtent();if(!t){var i=180*Ri[Pi.DEGREES]/e.getMetersPerUnit();t=Kt(-i,-i,i,i)}return t}Yl.prototype.forEachTileCoord=function(e,t,i){for(var n=this.getTileRangeForExtentAndZ(e,t),r=n.minX,o=n.maxX;r<=o;++r)for(var a=n.minY,s=n.maxY;a<=s;++a)i([t,r,a])},Yl.prototype.forEachTileCoordParentTileRange=function(e,t,i,n,r){var o,a,s,c=null,l=e[0]-1;for(2===this.zoomFactor_?(a=e[1],s=e[2]):c=this.getTileCoordExtent(e,r);l>=this.minZoom;){if(o=2===this.zoomFactor_?Ms(a=Math.floor(a/2),a,s=Math.floor(s/2),s,n):this.getTileRangeForExtentAndZ(c,l,n),t.call(i,l,o))return!0;--l}return!1},Yl.prototype.getExtent=function(){return this.extent_},Yl.prototype.getMaxZoom=function(){return this.maxZoom},Yl.prototype.getMinZoom=function(){return this.minZoom},Yl.prototype.getOrigin=function(e){return this.origin_?this.origin_:this.origins_[e]},Yl.prototype.getResolution=function(e){return this.resolutions_[e]},Yl.prototype.getResolutions=function(){return this.resolutions_},Yl.prototype.getTileCoordChildTileRange=function(e,t,i){if(e[0]<this.maxZoom){if(2===this.zoomFactor_){var n=2*e[1],r=2*e[2];return Ms(n,n+1,r,r+1,t)}var o=this.getTileCoordExtent(e,i);return this.getTileRangeForExtentAndZ(o,e[0]+1,t)}return null},Yl.prototype.getTileRangeExtent=function(e,t,i){var n=this.getOrigin(e),r=this.getResolution(e),o=mr(this.getTileSize(e),this.tmpSize_),a=n[0]+t.minX*o[0]*r,s=n[0]+(t.maxX+1)*o[0]*r;return Kt(a,n[1]+t.minY*o[1]*r,s,n[1]+(t.maxY+1)*o[1]*r,i)},Yl.prototype.getTileRangeForExtentAndZ=function(e,t,i){var n=Xl;this.getTileCoordForXYAndZ_(e[0],e[1],t,!1,n);var r=n[1],o=n[2];return this.getTileCoordForXYAndZ_(e[2],e[3],t,!0,n),Ms(r,n[1],o,n[2],i)},Yl.prototype.getTileCoordCenter=function(e){var t=this.getOrigin(e[0]),i=this.getResolution(e[0]),n=mr(this.getTileSize(e[0]),this.tmpSize_);return[t[0]+(e[1]+.5)*n[0]*i,t[1]+(e[2]+.5)*n[1]*i]},Yl.prototype.getTileCoordExtent=function(e,t){var i=this.getOrigin(e[0]),n=this.getResolution(e[0]),r=mr(this.getTileSize(e[0]),this.tmpSize_),o=i[0]+e[1]*r[0]*n,a=i[1]+e[2]*r[1]*n;return Kt(o,a,o+r[0]*n,a+r[1]*n,t)},Yl.prototype.getTileCoordForCoordAndResolution=function(e,t,i){return this.getTileCoordForXYAndResolution_(e[0],e[1],t,!1,i)},Yl.prototype.getTileCoordForXYAndResolution_=function(e,t,i,n,r){var o=this.getZForResolution(i),a=i/this.getResolution(o),s=this.getOrigin(o),c=mr(this.getTileSize(o),this.tmpSize_),l=n?.5:0,u=n?0:.5,h=Math.floor((e-s[0])/i+l),d=Math.floor((t-s[1])/i+u),p=a*h/c[0],m=a*d/c[1];return n?(p=Math.ceil(p)-1,m=Math.ceil(m)-1):(p=Math.floor(p),m=Math.floor(m)),Wl(o,p,m,r)},Yl.prototype.getTileCoordForXYAndZ_=function(e,t,i,n,r){var o=this.getOrigin(i),a=this.getResolution(i),s=mr(this.getTileSize(i),this.tmpSize_),c=n?.5:0,l=n?0:.5,u=Math.floor((e-o[0])/a+c),h=Math.floor((t-o[1])/a+l),d=u/s[0],p=h/s[1];return n?(d=Math.ceil(d)-1,p=Math.ceil(p)-1):(d=Math.floor(d),p=Math.floor(p)),Wl(i,d,p,r)},Yl.prototype.getTileCoordForCoordAndZ=function(e,t,i){return this.getTileCoordForXYAndZ_(e[0],e[1],t,!1,i)},Yl.prototype.getTileCoordResolution=function(e){return this.resolutions_[e[0]]},Yl.prototype.getTileSize=function(e){return this.tileSize_?this.tileSize_:this.tileSizes_[e]},Yl.prototype.getFullTileRange=function(e){return this.fullTileRanges_?this.fullTileRanges_[e]:null},Yl.prototype.getZForResolution=function(e,t){return dt(Ge(this.resolutions_,e,t||0),this.minZoom,this.maxZoom)},Yl.prototype.calculateTileRanges_=function(e){for(var t=this.resolutions_.length,i=new Array(t),n=this.minZoom;n<t;++n)i[n]=this.getTileRangeForExtentAndZ(e,n);this.fullTileRanges_=i};var Jl=function(e){function t(t){e.call(this,{attributions:t.attributions,attributionsCollapsible:t.attributionsCollapsible,projection:t.projection,state:t.state,wrapX:t.wrapX}),this.opaque_=void 0!==t.opaque&&t.opaque,this.tilePixelRatio_=void 0!==t.tilePixelRatio?t.tilePixelRatio:1,this.tileGrid=void 0!==t.tileGrid?t.tileGrid:null,this.tileCache=new jl(t.cacheSize),this.tmpSize=[0,0],this.key_=t.key||"",this.tileOptions={transition:t.transition}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.canExpireCache=function(){return this.tileCache.canExpireCache()},t.prototype.expireCache=function(e,t){var i=this.getTileCacheForProjection(e);i&&i.expireCache(t)},t.prototype.forEachLoadedTile=function(e,t,i,n){var r=this.getTileCacheForProjection(e);if(!r)return!1;for(var o,a,s,c=!0,l=i.minX;l<=i.maxX;++l)for(var u=i.minY;u<=i.maxY;++u)a=zl(t,l,u),s=!1,r.containsKey(a)&&(s=(o=r.get(a)).getState()===at.LOADED)&&(s=!1!==n(o)),s||(c=!1);return c},t.prototype.getGutterForProjection=function(e){return 0},t.prototype.getKey=function(){return this.key_},t.prototype.setKey=function(e){this.key_!==e&&(this.key_=e,this.changed())},t.prototype.getOpaque=function(e){return this.opaque_},t.prototype.getResolutions=function(){return this.tileGrid.getResolutions()},t.prototype.getTile=function(e,t,n,r,o){return i()},t.prototype.getTileGrid=function(){return this.tileGrid},t.prototype.getTileGridForProjection=function(e){return this.tileGrid?this.tileGrid:Kl(e)},t.prototype.getTileCacheForProjection=function(e){var t=this.getProjection();return t&&!en(t,e)?null:this.tileCache},t.prototype.getTilePixelRatio=function(e){return this.tilePixelRatio_},t.prototype.getTilePixelSize=function(e,t,i){var n,r,o,a=this.getTileGridForProjection(i),s=this.getTilePixelRatio(t),c=mr(a.getTileSize(e),this.tmpSize);return 1==s?c:(n=c,r=s,void 0===(o=this.tmpSize)&&(o=[0,0]),o[0]=n[0]*r+.5|0,o[1]=n[1]*r+.5|0,o)},t.prototype.getTileCoordForTileUrlFunction=function(e,t){var i=void 0!==t?t:this.getProjection(),n=this.getTileGridForProjection(i);return this.getWrapX()&&i.isGlobal()&&(e=function(e,t,i){var n=t[0],r=e.getTileCoordCenter(t),o=Ql(i);if(Ht(o,r))return t;var a=gi(o),s=Math.ceil((o[0]-r[0])/a);return r[0]+=a*s,e.getTileCoordForCoordAndZ(r,n)}(n,e,i)),function(e,t){var i=e[0],n=e[1],r=e[2];if(t.getMinZoom()>i||i>t.getMaxZoom())return!1;var o,a=t.getExtent();return!(o=a?t.getTileRangeForExtentAndZ(a,i):t.getFullTileRange(i))||o.containsXY(n,r)}(e,n)?e:null},t.prototype.refresh=function(){this.tileCache.clear(),this.changed()},t.prototype.useTile=function(e,t,i,n){},t}(Ra),$l=function(e){function t(t,i){e.call(this,t),this.tile=i}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(P),eu=new Vc("precision mediump float;\nvarying vec2 v_texCoord;\n\n\nuniform sampler2D u_texture;\n\nvoid main(void) {\n  gl_FragColor = texture2D(u_texture, v_texCoord);\n}\n"),tu=new kc("varying vec2 v_texCoord;\n\n\nattribute vec2 a_position;\nattribute vec2 a_texCoord;\nuniform vec4 u_tileOffset;\n\nvoid main(void) {\n  gl_Position = vec4(a_position * u_tileOffset.xy + u_tileOffset.zw, 0., 1.);\n  v_texCoord = a_texCoord;\n}\n\n\n"),iu=function(e,t){this.u_tileOffset=e.getUniformLocation(t,"u_tileOffset"),this.u_texture=e.getUniformLocation(t,"u_texture"),this.a_position=e.getAttribLocation(t,"a_position"),this.a_texCoord=e.getAttribLocation(t,"a_texCoord")},nu=function(e){function t(t,i){e.call(this,t,i),this.fragmentShader_=eu,this.vertexShader_=tu,this.locations_=null,this.renderArrayBuffer_=new Jc([0,0,0,1,1,0,1,1,0,1,0,0,1,1,1,0]),this.renderedTileRange_=null,this.renderedFramebufferExtent_=null,this.renderedRevision_=-1,this.tmpSize_=[0,0]}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.disposeInternal=function(){this.mapRenderer.getContext().deleteBuffer(this.renderArrayBuffer_),e.prototype.disposeInternal.call(this)},t.prototype.createLoadedTileFinder=function(e,t,i){var n=this.mapRenderer;return(function(r,o){return e.forEachLoadedTile(t,r,o,(function(e){var t=n.isTileTextureLoaded(e);return t&&(i[r]||(i[r]={}),i[r][e.tileCoord.toString()]=e),t}))})},t.prototype.handleWebGLContextLost=function(){e.prototype.handleWebGLContextLost.call(this),this.locations_=null},t.prototype.prepareFrame=function(e,t,i){var n=this.mapRenderer,r=i.getGL(),o=e.viewState,a=o.projection,s=this.getLayer(),c=s.getSource();if(!(c instanceof Jl))return!0;var l,u=c.getTileGridForProjection(a),h=u.getZForResolution(o.resolution),d=u.getResolution(h),p=c.getTilePixelSize(h,e.pixelRatio,a),m=p[0]/mr(u.getTileSize(h),this.tmpSize_)[0],f=d/m,g=c.getTilePixelRatio(m)*c.getGutterForProjection(a),S=o.center,y=e.extent,v=u.getTileRangeForExtentAndZ(y,h);if(this.renderedTileRange_&&this.renderedTileRange_.equals(v)&&this.renderedRevision_==c.getRevision())l=this.renderedFramebufferExtent_;else{var _=v.getSize(),C=function(e){return st(0<e,29),Math.pow(2,Math.ceil(Math.log(e)/Math.LN2))}(Math.max(_[0]*p[0],_[1]*p[1])),T=f*C,D=u.getOrigin(h),A=D[0]+v.minX*p[0]*f,I=D[1]+v.minY*p[1]*f;l=[A,I,A+T,I+T],this.bindFramebuffer(e,C),r.viewport(0,0,C,C),r.clearColor(0,0,0,0),r.clear(16384),r.disable(3042);var P=i.getProgram(this.fragmentShader_,this.vertexShader_);i.useProgram(P),this.locations_||(this.locations_=new iu(r,P)),i.bindBuffer(34962,this.renderArrayBuffer_),r.enableVertexAttribArray(this.locations_.a_position),r.vertexAttribPointer(this.locations_.a_position,2,5126,!1,16,0),r.enableVertexAttribArray(this.locations_.a_texCoord),r.vertexAttribPointer(this.locations_.a_texCoord,2,5126,!1,16,8),r.uniform1i(this.locations_.u_texture,0);var R={};R[h]={};var x,E,b,O,q,F,M=this.createLoadedTileFinder(c,a,R),L=s.getUseInterimTilesOnError(),w=!0,N=[1/0,1/0,-1/0,-1/0],B=new Fs(0,0,0,0);for(O=v.minX;O<=v.maxX;++O)for(q=v.minY;q<=v.maxY;++q)if(E=c.getTile(h,O,q,m,a),void 0===t.extent||Si(F=u.getTileCoordExtent(E.tileCoord,N),t.extent)){if((b=E.getState())==at.LOADED||b==at.EMPTY||b==at.ERROR&&!L||(E=E.getInterimTile()),(b=E.getState())==at.LOADED){if(n.isTileTextureLoaded(E)){R[h][E.tileCoord.toString()]=E;continue}}else if(b==at.EMPTY||b==at.ERROR&&!L)continue;w=!1,u.forEachTileCoordParentTileRange(E.tileCoord,M,null,B,N)||(x=u.getTileCoordChildTileRange(E.tileCoord,B,N))&&M(h+1,x)}var V=Object.keys(R).map(Number);V.sort(Ve);for(var k=new Float32Array(4),G=0,W=V.length;G<W;++G){var z=R[V[G]];for(var H in z)(E=z[H])instanceof Gl&&(F=u.getTileCoordExtent(E.tileCoord,N),k[0]=2*(F[2]-F[0])/T,k[1]=2*(F[3]-F[1])/T,k[2]=2*(F[0]-l[0])/T-1,k[3]=2*(F[1]-l[1])/T-1,r.uniform4fv(this.locations_.u_tileOffset,k),n.bindTileTexture(E,p,g*m,U,U),r.drawArrays(5,0,4))}w?(this.renderedTileRange_=v,this.renderedFramebufferExtent_=l,this.renderedRevision_=c.getRevision()):(this.renderedTileRange_=null,this.renderedFramebufferExtent_=null,this.renderedRevision_=-1,e.animate=!0)}this.updateUsedTiles(e.usedTiles,c,h,v);var j=n.getTileTextureQueue();this.manageTilePyramid(e,c,u,m,a,y,h,s.getPreload(),(function(e){e.getState()!=at.LOADED||n.isTileTextureLoaded(e)||j.isKeyQueued(e.getKey())||j.enqueue([e,u.getTileCoordCenter(e.tileCoord),u.getResolution(e.tileCoord[0]),p,g*m])}),this),this.scheduleExpireCache(e,c);var X=this.texCoordMatrix;return on(X),dn(X,(Math.round(S[0]/d)*d-l[0])/(l[2]-l[0]),(Math.round(S[1]/d)*d-l[1])/(l[3]-l[1])),0!==o.rotation&&un(X,o.rotation),hn(X,e.size[0]*o.resolution/(l[2]-l[0]),e.size[1]*o.resolution/(l[3]-l[1])),dn(X,-.5,-.5),!0},t.prototype.forEachLayerAtPixel=function(e,t,i,n){if(this.framebuffer){var r=[e[0]/t.size[0],(t.size[1]-e[1])/t.size[1]],o=ln(this.texCoordMatrix,r.slice()),a=[o[0]*this.framebufferDimension,o[1]*this.framebufferDimension],s=this.mapRenderer.getContext().getGL();s.bindFramebuffer(s.FRAMEBUFFER,this.framebuffer);var c=new Uint8Array(4);return s.readPixels(a[0],a[1],1,1,s.RGBA,s.UNSIGNED_BYTE,c),c[3]>0?i.call(n,this.getLayer(),c):void 0}},t}(Nl);nu.handles=function(e){return e.getType()===Bo.TILE},nu.create=function(e,t){return new nu(e,t)};var ru=function(e){function t(t,i){e.call(this,t,i),this.dirty_=!1,this.renderedRevision_=-1,this.renderedResolution_=NaN,this.renderedExtent_=[1/0,1/0,-1/0,-1/0],this.renderedRenderOrder_=null,this.replayGroup_=null,this.layerState_=null}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.composeFrame=function(e,t,i){this.layerState_=t;var n=e.viewState,r=this.replayGroup_,o=e.size,a=e.pixelRatio,s=this.mapRenderer.getGL();r&&!r.isEmpty()&&(s.enable(s.SCISSOR_TEST),s.scissor(0,0,o[0]*a,o[1]*a),r.replay(i,n.center,n.resolution,n.rotation,o,a,t.opacity,t.managed?e.skippedFeatureUids:{}),s.disable(s.SCISSOR_TEST))},t.prototype.disposeInternal=function(){var t=this.replayGroup_;if(t){var i=this.mapRenderer.getContext();t.getDeleteResourcesFunction(i)(),this.replayGroup_=null}e.prototype.disposeInternal.call(this)},t.prototype.forEachFeatureAtCoordinate=function(e,t,i,n,o){if(this.replayGroup_&&this.layerState_){var a=this.mapRenderer.getContext(),s=t.viewState,c=this.getLayer(),l=this.layerState_,u={};return this.replayGroup_.forEachFeatureAtCoordinate(e,a,s.center,s.resolution,s.rotation,t.size,t.pixelRatio,l.opacity,{},(function(e){var t=r(e);if(!(t in u))return u[t]=!0,n.call(o,e,c)}))}},t.prototype.hasFeatureAtCoordinate=function(e,t){if(this.replayGroup_&&this.layerState_){var i=this.mapRenderer.getContext(),n=t.viewState,r=this.layerState_;return this.replayGroup_.hasFeatureAtCoordinate(e,i,n.center,n.resolution,n.rotation,t.size,t.pixelRatio,r.opacity,t.skippedFeatureUids)}return!1},t.prototype.forEachLayerAtPixel=function(e,t,i,n){var r=ln(t.pixelToCoordinateTransform,e.slice());return this.hasFeatureAtCoordinate(r,t)?i.call(n,this.getLayer(),null):void 0},t.prototype.handleStyleImageChange_=function(e){this.renderIfReadyAndVisible()},t.prototype.prepareFrame=function(e,t,i){var n=this.getLayer(),r=n.getSource(),o=e.viewHints[Tt],a=e.viewHints[Dt],s=n.getUpdateWhileAnimating(),c=n.getUpdateWhileInteracting();if(!this.dirty_&&!s&&o||!c&&a)return!0;var l=e.extent,u=e.viewState,h=u.projection,d=u.resolution,p=e.pixelRatio,m=n.getRevision(),f=n.getRenderBuffer(),g=n.getRenderOrder();void 0===g&&(g=yc);var S=Ut(l,f*d);if(!this.dirty_&&this.renderedResolution_==d&&this.renderedRevision_==m&&this.renderedRenderOrder_==g&&jt(this.renderedExtent_,S))return!0;this.replayGroup_&&e.postRenderFunctions.push(this.replayGroup_.getDeleteResourcesFunction(i)),this.dirty_=!1;var y=new ql(_c(d,p),S,n.getRenderBuffer());r.loadFeatures(S,d,h);var v=function(e){var t,i=e.getStyleFunction()||n.getStyleFunction();if(i&&(t=i(e,d)),t){var r=this.renderFeature(e,d,p,t,y);this.dirty_=this.dirty_||r}}.bind(this);if(g){var _=[];r.forEachFeatureInExtent(S,(function(e){_.push(e)})),_.sort(g),_.forEach(v.bind(this))}else r.forEachFeatureInExtent(S,v);return y.finish(i),this.renderedResolution_=d,this.renderedRevision_=m,this.renderedRenderOrder_=g,this.renderedExtent_=S,this.replayGroup_=y,!0},t.prototype.renderFeature=function(e,t,i,n,r){if(!n)return!1;var o=!1;if(Array.isArray(n))for(var a=n.length-1;a>=0;--a)o=Cc(r,e,n[a],vc(t,i),this.handleStyleImageChange_,this)||o;else o=Cc(r,e,n,vc(t,i),this.handleStyleImageChange_,this)||o;return o},t}(Nl);ru.handles=function(e){return e.getType()===Bo.VECTOR},ru.create=function(e,t){return new ru(e,t)};var ou=function(e){function t(t){(t=l({},t)).controls||(t.controls=Nr()),t.interactions||(t.interactions=fs()),e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createRenderer=function(){var e=new Vl(this);return e.registerLayerRenderers([Bl,nu,ru]),e},t}(fr),au="preload",su="useInterimTilesOnError",cu=function(e){function t(t){var i=t||{},n=l({},i);delete n.preload,delete n.useInterimTilesOnError,e.call(this,n),this.setPreload(void 0!==i.preload?i.preload:0),this.setUseInterimTilesOnError(void 0===i.useInterimTilesOnError||i.useInterimTilesOnError),this.type=Bo.TILE}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getPreload=function(){return this.get(au)},t.prototype.setPreload=function(e){this.set(au,e)},t.prototype.getUseInterimTilesOnError=function(){return this.get(su)},t.prototype.setUseInterimTilesOnError=function(e){this.set(su,e)},t}(Ar);function lu(e,t,i,n){var r,o=(r=i,nn(t,e)(r,void 0,r.length)),a=Qi(t,n,i),s=t.getMetersPerUnit();void 0!==s&&(a*=s);var c=e.getMetersPerUnit();void 0!==c&&(a/=c);var l=e.getExtent();if(!l||Ht(l,o)){var u=Qi(e,a,o)/a;isFinite(u)&&u>0&&(a/=u)}return a}function uu(e,t,i,n){var r=i-e,o=n-t,a=Math.sqrt(r*r+o*o);return[Math.round(i+r/a),Math.round(n+o/a)]}function hu(e,t,i,n,r,o,a,s,c,l,u){var h=nr(Math.round(i*e),Math.round(i*t));if(0===c.length)return h.canvas;h.scale(i,i);var d=[1/0,1/0,-1/0,-1/0];c.forEach((function(e,t,i){ti(d,e.extent)}));var p=gi(d),m=di(d),f=nr(Math.round(i*p/n),Math.round(i*m/n)),g=i/n;c.forEach((function(e,t,i){var n=e.extent[0]-d[0],r=-(e.extent[3]-d[3]),o=gi(e.extent),a=di(e.extent);f.drawImage(e.image,l,l,e.image.width-2*l,e.image.height-2*l,n*g,r*g,o*g,a*g)}));var S=mi(a);return s.getTriangles().forEach((function(e,t,r){var a=e.source,s=e.target,c=a[0][0],l=a[0][1],u=a[1][0],p=a[1][1],m=a[2][0],g=a[2][1],y=(s[0][0]-S[0])/o,v=-(s[0][1]-S[1])/o,_=(s[1][0]-S[0])/o,C=-(s[1][1]-S[1])/o,T=(s[2][0]-S[0])/o,D=-(s[2][1]-S[1])/o,A=c,I=l;c=0,l=0;var P=function(e){for(var t=e.length,i=0;i<t;i++){for(var n=i,r=Math.abs(e[i][i]),o=i+1;o<t;o++){var a=Math.abs(e[o][i]);a>r&&(r=a,n=o)}if(0===r)return null;var s=e[n];e[n]=e[i],e[i]=s;for(var c=i+1;c<t;c++)for(var l=-e[c][i]/e[i][i],u=i;u<t+1;u++)i==u?e[c][u]=0:e[c][u]+=l*e[i][u]}for(var h=new Array(t),d=t-1;d>=0;d--){h[d]=e[d][t]/e[d][d];for(var p=d-1;p>=0;p--)e[p][t]-=e[p][d]*h[d]}return h}([[u-=A,p-=I,0,0,_-y],[m-=A,g-=I,0,0,T-y],[0,0,u,p,C-v],[0,0,m,g,D-v]]);if(P){h.save(),h.beginPath();var R=(y+_+T)/3,x=(v+C+D)/3,E=uu(R,x,y,v),b=uu(R,x,_,C),O=uu(R,x,T,D);h.moveTo(b[0],b[1]),h.lineTo(E[0],E[1]),h.lineTo(O[0],O[1]),h.clip(),h.transform(P[0],P[2],P[1],P[3],y,v),h.translate(d[0]-A,d[3]-I),h.scale(n/i,-n/i),h.drawImage(f.canvas,0,0),h.restore()}})),u&&(h.save(),h.strokeStyle="black",h.lineWidth=1,s.getTriangles().forEach((function(e,t,i){var n=e.target,r=(n[0][0]-S[0])/o,a=-(n[0][1]-S[1])/o,s=(n[1][0]-S[0])/o,c=-(n[1][1]-S[1])/o,l=(n[2][0]-S[0])/o,u=-(n[2][1]-S[1])/o;h.beginPath(),h.moveTo(s,c),h.lineTo(r,a),h.lineTo(l,u),h.closePath(),h.stroke()})),h.restore()),h.canvas}cu.prototype.getSource;var du=function(e,t,i,n,r){this.sourceProj_=e,this.targetProj_=t;var o={},a=nn(this.targetProj_,this.sourceProj_);this.transformInv_=function(e){var t=e[0]+"/"+e[1];return o[t]||(o[t]=a(e)),o[t]},this.maxSourceExtent_=n,this.errorThresholdSquared_=r*r,this.triangles_=[],this.wrapsXInSource_=!1,this.canWrapXInSource_=this.sourceProj_.canWrapX()&&!!n&&!!this.sourceProj_.getExtent()&&gi(n)==gi(this.sourceProj_.getExtent()),this.sourceWorldWidth_=this.sourceProj_.getExtent()?gi(this.sourceProj_.getExtent()):null,this.targetWorldWidth_=this.targetProj_.getExtent()?gi(this.targetProj_.getExtent()):null;var s=mi(i),c=fi(i),l=ci(i),u=si(i),h=this.transformInv_(s),d=this.transformInv_(c),p=this.transformInv_(l),m=this.transformInv_(u);if(this.addQuad_(s,c,l,u,h,d,p,m,10),this.wrapsXInSource_){var f=1/0;this.triangles_.forEach((function(e,t,i){f=Math.min(f,e.source[0][0],e.source[1][0],e.source[2][0])})),this.triangles_.forEach(function(e){if(Math.max(e.source[0][0],e.source[1][0],e.source[2][0])-f>this.sourceWorldWidth_/2){var t=[[e.source[0][0],e.source[0][1]],[e.source[1][0],e.source[1][1]],[e.source[2][0],e.source[2][1]]];t[0][0]-f>this.sourceWorldWidth_/2&&(t[0][0]-=this.sourceWorldWidth_),t[1][0]-f>this.sourceWorldWidth_/2&&(t[1][0]-=this.sourceWorldWidth_),t[2][0]-f>this.sourceWorldWidth_/2&&(t[2][0]-=this.sourceWorldWidth_);var i=Math.min(t[0][0],t[1][0],t[2][0]);Math.max(t[0][0],t[1][0],t[2][0])-i<this.sourceWorldWidth_/2&&(e.source=t)}}.bind(this))}o={}};du.prototype.addTriangle_=function(e,t,i,n,r,o){this.triangles_.push({source:[n,r,o],target:[e,t,i]})},du.prototype.addQuad_=function(e,t,i,n,r,o,a,s,c){var l=Gt([r,o,a,s]),u=this.sourceWorldWidth_?gi(l)/this.sourceWorldWidth_:null,h=this.sourceWorldWidth_,d=this.sourceProj_.canWrapX()&&u>.5&&u<1,p=!1;if(c>0&&(this.targetProj_.isGlobal()&&this.targetWorldWidth_&&(p=gi(Gt([e,t,i,n]))/this.targetWorldWidth_>.25||p),!d&&this.sourceProj_.isGlobal()&&u&&(p=u>.25||p)),p||!this.maxSourceExtent_||Si(l,this.maxSourceExtent_)){if(!(p||isFinite(r[0])&&isFinite(r[1])&&isFinite(o[0])&&isFinite(o[1])&&isFinite(a[0])&&isFinite(a[1])&&isFinite(s[0])&&isFinite(s[1]))){if(!(c>0))return;p=!0}if(c>0){if(!p){var m,f=[(e[0]+i[0])/2,(e[1]+i[1])/2],g=this.transformInv_(f);m=d?(St(r[0],h)+St(a[0],h))/2-St(g[0],h):(r[0]+a[0])/2-g[0];var S=(r[1]+a[1])/2-g[1];p=m*m+S*S>this.errorThresholdSquared_}if(p){if(Math.abs(e[0]-i[0])<=Math.abs(e[1]-i[1])){var y=[(t[0]+i[0])/2,(t[1]+i[1])/2],v=this.transformInv_(y),_=[(n[0]+e[0])/2,(n[1]+e[1])/2],C=this.transformInv_(_);this.addQuad_(e,t,y,_,r,o,v,C,c-1),this.addQuad_(_,y,i,n,C,v,a,s,c-1)}else{var T=[(e[0]+t[0])/2,(e[1]+t[1])/2],D=this.transformInv_(T),A=[(i[0]+n[0])/2,(i[1]+n[1])/2],I=this.transformInv_(A);this.addQuad_(e,T,A,n,r,D,I,s,c-1),this.addQuad_(T,t,i,A,D,o,a,I,c-1)}return}}if(d){if(!this.canWrapXInSource_)return;this.wrapsXInSource_=!0}this.addTriangle_(e,i,n,r,a,s),this.addTriangle_(e,t,i,r,o,a)}},du.prototype.calculateSourceExtent=function(){var e=[1/0,1/0,-1/0,-1/0];return this.triangles_.forEach((function(t,i,n){var r=t.source;ii(e,r[0]),ii(e,r[1]),ii(e,r[2])})),e},du.prototype.getTriangles=function(){return this.triangles_};var pu=function(e){function t(t,i,n,r,o,a,s,c,l,u,h){e.call(this,o,at.IDLE),this.renderEdges_=void 0!==h&&h,this.pixelRatio_=s,this.gutter_=c,this.canvas_=null,this.sourceTileGrid_=i,this.targetTileGrid_=r,this.wrappedTileCoord_=a||o,this.sourceTiles_=[],this.sourcesListenerKeys_=null,this.sourceZ_=0;var d=r.getTileCoordExtent(this.wrappedTileCoord_),p=this.targetTileGrid_.getExtent(),m=this.sourceTileGrid_.getExtent(),f=p?pi(d,p):d;if(0!==ai(f)){var g=t.getExtent();g&&(m=m?pi(m,g):g);var S=r.getResolution(this.wrappedTileCoord_[0]),y=lu(t,n,li(f),S);if(!isFinite(y)||y<=0)this.state=at.EMPTY;else{var v=void 0!==u?u:gs;if(this.triangulation_=new du(t,n,f,m,y*v),0!==this.triangulation_.getTriangles().length){this.sourceZ_=i.getZForResolution(y);var _=this.triangulation_.calculateSourceExtent();if(m&&(t.canWrapX()?(_[1]=dt(_[1],m[1],m[3]),_[3]=dt(_[3],m[1],m[3])):_=pi(_,m)),ai(_)){for(var C=i.getTileRangeForExtentAndZ(_,this.sourceZ_),T=C.minX;T<=C.maxX;T++)for(var D=C.minY;D<=C.maxY;D++){var A=l(this.sourceZ_,T,D,s);A&&this.sourceTiles_.push(A)}0===this.sourceTiles_.length&&(this.state=at.EMPTY)}else this.state=at.EMPTY}else this.state=at.EMPTY}}else this.state=at.EMPTY}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.disposeInternal=function(){this.state==at.LOADING&&this.unlistenSources_(),e.prototype.disposeInternal.call(this)},t.prototype.getImage=function(){return this.canvas_},t.prototype.reproject_=function(){var e=[];if(this.sourceTiles_.forEach(function(t,i,n){t&&t.getState()==at.LOADED&&e.push({extent:this.sourceTileGrid_.getTileCoordExtent(t.tileCoord),image:t.getImage()})}.bind(this)),this.sourceTiles_.length=0,0===e.length)this.state=at.ERROR;else{var t=this.wrappedTileCoord_[0],i=this.targetTileGrid_.getTileSize(t),n="number"==typeof i?i:i[0],r="number"==typeof i?i:i[1],o=this.targetTileGrid_.getResolution(t),a=this.sourceTileGrid_.getResolution(this.sourceZ_),s=this.targetTileGrid_.getTileCoordExtent(this.wrappedTileCoord_);this.canvas_=hu(n,r,this.pixelRatio_,a,this.sourceTileGrid_.getExtent(),o,s,this.triangulation_,e,this.gutter_,this.renderEdges_),this.state=at.LOADED}this.changed()},t.prototype.load=function(){if(this.state==at.IDLE){this.state=at.LOADING,this.changed();var e=0;this.sourcesListenerKeys_=[],this.sourceTiles_.forEach(function(t,i,n){var r=t.getState();if(r==at.IDLE||r==at.LOADING){e++;var o=S(t,E.CHANGE,(function(i){var n=t.getState();n!=at.LOADED&&n!=at.ERROR&&n!=at.EMPTY||(_(o),0==--e&&(this.unlistenSources_(),this.reproject_()))}),this);this.sourcesListenerKeys_.push(o)}}.bind(this)),this.sourceTiles_.forEach((function(e,t,i){e.getState()==at.IDLE&&e.load()})),0===e&&setTimeout(this.reproject_.bind(this),0)}},t.prototype.unlistenSources_=function(){this.sourcesListenerKeys_.forEach(_),this.sourcesListenerKeys_=null},t}(kl);function mu(e,t){var i=/\{z\}/g,n=/\{x\}/g,r=/\{y\}/g,o=/\{-y\}/g;return function(a,s,c){return a?e.replace(i,a[0].toString()).replace(n,a[1].toString()).replace(r,(function(){return(-a[2]-1).toString()})).replace(o,(function(){var e=a[0],i=t.getFullTileRange(e);return st(i,55),(i.getHeight()+a[2]).toString()})):void 0}}function fu(e,t){for(var i=e.length,n=new Array(i),r=0;r<i;++r)n[r]=mu(e[r],t);return function(e){return 1===e.length?e[0]:function(t,i,n){if(t){var r=St(function(e){return(e[1]<<e[0])+e[2]}(t),e.length);return e[r](t,i,n)}}}(n)}function gu(e,t,i){}var Su="tileloadstart",yu="tileloadend",vu="tileloaderror";function _u(e,t){e.getImage().src=t}var Cu=function(e){function t(t){var i=t||{},n=void 0!==i.projection?i.projection:"EPSG:3857",r=void 0!==i.tileGrid?i.tileGrid:function(e){var t=e||{},i=t.extent||Zi("EPSG:3857").getExtent(),n={extent:i,minZoom:t.minZoom,tileSize:t.tileSize,resolutions:Zl(i,t.maxZoom,t.tileSize)};return new Yl(n)}({extent:Ql(n),maxZoom:i.maxZoom,minZoom:i.minZoom,tileSize:i.tileSize});e.call(this,{attributions:i.attributions,cacheSize:i.cacheSize,crossOrigin:i.crossOrigin,opaque:i.opaque,projection:n,reprojectionErrorThreshold:i.reprojectionErrorThreshold,tileGrid:r,tileLoadFunction:i.tileLoadFunction,tilePixelRatio:i.tilePixelRatio,tileUrlFunction:i.tileUrlFunction,url:i.url,urls:i.urls,wrapX:void 0===i.wrapX||i.wrapX,transition:i.transition,attributionsCollapsible:i.attributionsCollapsible})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(function(e){function t(t){e.call(this,{attributions:t.attributions,cacheSize:t.cacheSize,opaque:t.opaque,projection:t.projection,state:t.state,tileGrid:t.tileGrid,tileLoadFunction:t.tileLoadFunction?t.tileLoadFunction:_u,tilePixelRatio:t.tilePixelRatio,tileUrlFunction:t.tileUrlFunction,url:t.url,urls:t.urls,wrapX:t.wrapX,transition:t.transition,key:t.key,attributionsCollapsible:t.attributionsCollapsible}),this.crossOrigin=void 0!==t.crossOrigin?t.crossOrigin:null,this.tileClass=void 0!==t.tileClass?t.tileClass:Gl,this.tileCacheForProjection={},this.tileGridForProjection={},this.reprojectionErrorThreshold_=t.reprojectionErrorThreshold,this.renderReprojectionEdges_=!1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.canExpireCache=function(){if(this.tileCache.canExpireCache())return!0;for(var e in this.tileCacheForProjection)if(this.tileCacheForProjection[e].canExpireCache())return!0;return!1},t.prototype.expireCache=function(e,t){var i=this.getTileCacheForProjection(e);for(var n in this.tileCache.expireCache(this.tileCache==i?t:{}),this.tileCacheForProjection){var r=this.tileCacheForProjection[n];r.expireCache(r==i?t:{})}},t.prototype.getGutterForProjection=function(e){return this.getProjection()&&e&&!en(this.getProjection(),e)?0:this.getGutter()},t.prototype.getGutter=function(){return 0},t.prototype.getOpaque=function(t){return!(this.getProjection()&&t&&!en(this.getProjection(),t))&&e.prototype.getOpaque.call(this,t)},t.prototype.getTileGridForProjection=function(e){var t=this.getProjection();if(!this.tileGrid||t&&!en(t,e)){var i=r(e);return i in this.tileGridForProjection||(this.tileGridForProjection[i]=Kl(e)),this.tileGridForProjection[i]}return this.tileGrid},t.prototype.getTileCacheForProjection=function(e){var t=this.getProjection();if(!t||en(t,e))return this.tileCache;var i=r(e);return i in this.tileCacheForProjection||(this.tileCacheForProjection[i]=new jl(this.tileCache.highWaterMark)),this.tileCacheForProjection[i]},t.prototype.createTile_=function(e,t,i,n,r,o){var a=[e,t,i],s=this.getTileCoordForTileUrlFunction(a,r),c=s?this.tileUrlFunction(s,n,r):void 0,l=new this.tileClass(a,void 0!==c?at.IDLE:at.EMPTY,void 0!==c?c:"",this.crossOrigin,this.tileLoadFunction,this.tileOptions);return l.key=o,S(l,E.CHANGE,this.handleTileChange,this),l},t.prototype.getTile=function(e,t,i,n,r){var o=this.getProjection();if(o&&r&&!en(o,r)){var a,s=this.getTileCacheForProjection(r),c=[e,t,i],l=Hl(c);s.containsKey(l)&&(a=s.get(l));var u=this.getKey();if(a&&a.key==u)return a;var h=this.getTileGridForProjection(o),d=this.getTileGridForProjection(r),p=this.getTileCoordForTileUrlFunction(c,r),m=new pu(o,h,r,d,c,p,this.getTilePixelRatio(n),this.getGutter(),function(e,t,i,n){return this.getTileInternal(e,t,i,n,o)}.bind(this),this.reprojectionErrorThreshold_,this.renderReprojectionEdges_);return m.key=u,a?(m.interimTile=a,m.refreshInterimChain(),s.replace(l,m)):s.set(l,m),m}return this.getTileInternal(e,t,i,n,o||r)},t.prototype.getTileInternal=function(e,t,i,n,r){var o=null,a=zl(e,t,i),s=this.getKey();if(this.tileCache.containsKey(a)){if((o=this.tileCache.get(a)).key!=s){var c=o;o=this.createTile_(e,t,i,n,r,s),c.getState()==at.IDLE?o.interimTile=c.interimTile:o.interimTile=c,o.refreshInterimChain(),this.tileCache.replace(a,o)}}else o=this.createTile_(e,t,i,n,r,s),this.tileCache.set(a,o);return o},t.prototype.setRenderReprojectionEdges=function(e){if(this.renderReprojectionEdges_!=e){for(var t in this.renderReprojectionEdges_=e,this.tileCacheForProjection)this.tileCacheForProjection[t].clear();this.changed()}},t.prototype.setTileGridForProjection=function(e,t){var i=Zi(e);if(i){var n=r(i);n in this.tileGridForProjection||(this.tileGridForProjection[n]=t)}},t}(function(e){function t(t){e.call(this,{attributions:t.attributions,cacheSize:t.cacheSize,opaque:t.opaque,projection:t.projection,state:t.state,tileGrid:t.tileGrid,tilePixelRatio:t.tilePixelRatio,wrapX:t.wrapX,transition:t.transition,key:t.key,attributionsCollapsible:t.attributionsCollapsible}),this.generateTileUrlFunction_=!t.tileUrlFunction,this.tileLoadFunction=t.tileLoadFunction,this.tileUrlFunction=t.tileUrlFunction?t.tileUrlFunction.bind(this):gu,this.urls=null,t.urls?this.setUrls(t.urls):t.url&&this.setUrl(t.url),t.tileUrlFunction&&this.setTileUrlFunction(t.tileUrlFunction,this.key_),this.tileLoadingKeys_={}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getTileLoadFunction=function(){return this.tileLoadFunction},t.prototype.getTileUrlFunction=function(){return this.tileUrlFunction},t.prototype.getUrls=function(){return this.urls},t.prototype.handleTileChange=function(e){var t,i=e.target,n=r(i),o=i.getState();o==at.LOADING?(this.tileLoadingKeys_[n]=!0,t=Su):n in this.tileLoadingKeys_&&(delete this.tileLoadingKeys_[n],t=o==at.ERROR?vu:o==at.LOADED||o==at.ABORT?yu:void 0),null!=t&&this.dispatchEvent(new $l(t,i))},t.prototype.setTileLoadFunction=function(e){this.tileCache.clear(),this.tileLoadFunction=e,this.changed()},t.prototype.setTileUrlFunction=function(e,t){this.tileUrlFunction=e,this.tileCache.pruneExceptNewestZ(),void 0!==t?this.setKey(t):this.changed()},t.prototype.setUrl=function(e){var t=this.urls=function(e){var t=[],i=/\{([a-z])-([a-z])\}/.exec(e);if(i){var n,r=i[1].charCodeAt(0),o=i[2].charCodeAt(0);for(n=r;n<=o;++n)t.push(e.replace(i[0],String.fromCharCode(n)));return t}if(i=i=/\{(\d+)-(\d+)\}/.exec(e)){for(var a=parseInt(i[2],10),s=parseInt(i[1],10);s<=a;s++)t.push(e.replace(i[0],s.toString()));return t}return t.push(e),t}(e);this.setUrls(t)},t.prototype.setUrls=function(e){this.urls=e;var t=e.join("\n");this.generateTileUrlFunction_?this.setTileUrlFunction(fu(e,this.tileGrid),t):this.setKey(t)},t.prototype.useTile=function(e,t,i){var n=zl(e,t,i);this.tileCache.containsKey(n)&&this.tileCache.get(n)},t}(Jl)));let Tu=(e,t,i=null)=>{let n;const r={payload:i,time:new Date};return"function"==typeof window.CustomEvent?n=new CustomEvent(t,{detail:r,bubbles:!0,cancelable:!0}):(n=document.createEvent("CustomEvent")).initCustomEvent(t,!0,!0,r),e.dispatchEvent(n)};const Du="dicommicroscopyviewer",Au={ROI_ADDED:`${Du}_roi_added`,ROI_REMOVED:`${Du}_roi_removed`,ROI_DRAWN:`${Du}_roi_drawn`,ROI_SELECTED:`${Du}_roi_selected`,ROI_MODIFIED:`${Du}_roi_modified`,MOVE_STARTED:`${Du}_move_started`,MOVE_ENDED:`${Du}_move_ended`},Iu={"00000000":"CommandGroupLength","00000001":"CommandLengthToEnd","00000002":"AffectedSOPClassUID","00000003":"RequestedSOPClassUID","00000010":"CommandRecognitionCode","00000100":"CommandField","00000110":"MessageID","00000120":"MessageIDBeingRespondedTo","00000200":"Initiator","00000300":"Receiver","00000400":"FindLocation","00000600":"MoveDestination","00000700":"Priority","00000800":"CommandDataSetType","00000850":"NumberOfMatches","00000860":"ResponseSequenceNumber","00000900":"Status","00000901":"OffendingElement","00000902":"ErrorComment","00000903":"ErrorID","00001000":"AffectedSOPInstanceUID","00001001":"RequestedSOPInstanceUID","00001002":"EventTypeID","00001005":"AttributeIdentifierList","00001008":"ActionTypeID","00001020":"NumberOfRemainingSuboperations","00001021":"NumberOfCompletedSuboperations","00001022":"NumberOfFailedSuboperations","00001023":"NumberOfWarningSuboperations","00001030":"MoveOriginatorApplicationEntityTitle","00001031":"MoveOriginatorMessageID","00004000":"DialogReceiver","00004010":"TerminalType","00005010":"MessageSetID","00005020":"EndMessageID","00005110":"DisplayFormat","00005120":"PagePositionID","00005130":"TextFormatID","00005140":"NormalReverse","00005150":"AddGrayScale","00005160":"Borders","00005170":"Copies","00005180":"CommandMagnificationType","00005190":"Erase","000051A0":"Print","000051B0":"Overlays","00020000":"FileMetaInformationGroupLength","00020001":"FileMetaInformationVersion","00020002":"MediaStorageSOPClassUID","00020003":"MediaStorageSOPInstanceUID","00020010":"TransferSyntaxUID","00020012":"ImplementationClassUID","00020013":"ImplementationVersionName","00020016":"SourceApplicationEntityTitle","00020017":"SendingApplicationEntityTitle","00020018":"ReceivingApplicationEntityTitle","00020100":"PrivateInformationCreatorUID","00020102":"PrivateInformation","00041130":"FileSetID","00041141":"FileSetDescriptorFileID","00041142":"SpecificCharacterSetOfFileSetDescriptorFile","00041200":"OffsetOfTheFirstDirectoryRecordOfTheRootDirectoryEntity","00041202":"OffsetOfTheLastDirectoryRecordOfTheRootDirectoryEntity","00041212":"FileSetConsistencyFlag","00041220":"DirectoryRecordSequence","00041400":"OffsetOfTheNextDirectoryRecord","00041410":"RecordInUseFlag","00041420":"OffsetOfReferencedLowerLevelDirectoryEntity","00041430":"DirectoryRecordType","00041432":"PrivateRecordUID","00041500":"ReferencedFileID","00041504":"MRDRDirectoryRecordOffset","00041510":"ReferencedSOPClassUIDInFile","00041511":"ReferencedSOPInstanceUIDInFile","00041512":"ReferencedTransferSyntaxUIDInFile","0004151A":"ReferencedRelatedGeneralSOPClassUIDInFile","00041600":"NumberOfReferences","00080001":"LengthToEnd","00080005":"SpecificCharacterSet","00080006":"LanguageCodeSequence","00080008":"ImageType","00080010":"RecognitionCode","00080012":"InstanceCreationDate","00080013":"InstanceCreationTime","00080014":"InstanceCreatorUID","00080015":"InstanceCoercionDateTime","00080016":"SOPClassUID","00080018":"SOPInstanceUID","0008001A":"RelatedGeneralSOPClassUID","0008001B":"OriginalSpecializedSOPClassUID","00080020":"StudyDate","00080021":"SeriesDate","00080022":"AcquisitionDate","00080023":"ContentDate","00080024":"OverlayDate","00080025":"CurveDate","0008002A":"AcquisitionDateTime","00080030":"StudyTime","00080031":"SeriesTime","00080032":"AcquisitionTime","00080033":"ContentTime","00080034":"OverlayTime","00080035":"CurveTime","00080040":"DataSetType","00080041":"DataSetSubtype","00080042":"NuclearMedicineSeriesType","00080050":"AccessionNumber","00080051":"IssuerOfAccessionNumberSequence","00080052":"QueryRetrieveLevel","00080053":"QueryRetrieveView","00080054":"RetrieveAETitle","00080055":"StationAETitle","00080056":"InstanceAvailability","00080058":"FailedSOPInstanceUIDList","00080060":"Modality","00080061":"ModalitiesInStudy","00080062":"SOPClassesInStudy","00080063":"AnatomicRegionsInStudyCodeSequence","00080064":"ConversionType","00080068":"PresentationIntentType","00080070":"Manufacturer","00080080":"InstitutionName","00080081":"InstitutionAddress","00080082":"InstitutionCodeSequence","00080090":"ReferringPhysicianName","00080092":"ReferringPhysicianAddress","00080094":"ReferringPhysicianTelephoneNumbers","00080096":"ReferringPhysicianIdentificationSequence","0008009C":"ConsultingPhysicianName","0008009D":"ConsultingPhysicianIdentificationSequence","00080100":"CodeValue","00080101":"ExtendedCodeValue","00080102":"CodingSchemeDesignator","00080103":"CodingSchemeVersion","00080104":"CodeMeaning","00080105":"MappingResource","00080106":"ContextGroupVersion","00080107":"ContextGroupLocalVersion","00080108":"ExtendedCodeMeaning","00080109":"CodingSchemeResourcesSequence","0008010A":"CodingSchemeURLType","0008010B":"ContextGroupExtensionFlag","0008010C":"CodingSchemeUID","0008010D":"ContextGroupExtensionCreatorUID","0008010E":"CodingSchemeURL","0008010F":"ContextIdentifier","00080110":"CodingSchemeIdentificationSequence","00080112":"CodingSchemeRegistry","00080114":"CodingSchemeExternalID","00080115":"CodingSchemeName","00080116":"CodingSchemeResponsibleOrganization","00080117":"ContextUID","00080118":"MappingResourceUID","00080119":"LongCodeValue","00080120":"URNCodeValue","00080121":"EquivalentCodeSequence","00080122":"MappingResourceName","00080123":"ContextGroupIdentificationSequence","00080124":"MappingResourceIdentificationSequence","00080201":"TimezoneOffsetFromUTC","00080220":"ResponsibleGroupCodeSequence","00080221":"EquipmentModality","00080222":"ManufacturerRelatedModelGroup","00080300":"PrivateDataElementCharacteristicsSequence","00080301":"PrivateGroupReference","00080302":"PrivateCreatorReference","00080303":"BlockIdentifyingInformationStatus","00080304":"NonidentifyingPrivateElements","00080305":"DeidentificationActionSequence","00080306":"IdentifyingPrivateElements","00080307":"DeidentificationAction","00080308":"PrivateDataElement","00080309":"PrivateDataElementValueMultiplicity","0008030A":"PrivateDataElementValueRepresentation","0008030B":"PrivateDataElementNumberOfItems","0008030C":"PrivateDataElementName","0008030D":"PrivateDataElementKeyword","0008030E":"PrivateDataElementDescription","0008030F":"PrivateDataElementEncoding","00080310":"PrivateDataElementDefinitionSequence","00081000":"NetworkID","00081010":"StationName","00081030":"StudyDescription","00081032":"ProcedureCodeSequence","0008103E":"SeriesDescription","0008103F":"SeriesDescriptionCodeSequence","00081040":"InstitutionalDepartmentName","00081048":"PhysiciansOfRecord","00081049":"PhysiciansOfRecordIdentificationSequence","00081050":"PerformingPhysicianName","00081052":"PerformingPhysicianIdentificationSequence","00081060":"NameOfPhysiciansReadingStudy","00081062":"PhysiciansReadingStudyIdentificationSequence","00081070":"OperatorsName","00081072":"OperatorIdentificationSequence","00081080":"AdmittingDiagnosesDescription","00081084":"AdmittingDiagnosesCodeSequence","00081090":"ManufacturerModelName","00081100":"ReferencedResultsSequence","00081110":"ReferencedStudySequence","00081111":"ReferencedPerformedProcedureStepSequence","00081115":"ReferencedSeriesSequence","00081120":"ReferencedPatientSequence","00081125":"ReferencedVisitSequence","00081130":"ReferencedOverlaySequence","00081134":"ReferencedStereometricInstanceSequence","0008113A":"ReferencedWaveformSequence","00081140":"ReferencedImageSequence","00081145":"ReferencedCurveSequence","0008114A":"ReferencedInstanceSequence","0008114B":"ReferencedRealWorldValueMappingInstanceSequence","00081150":"ReferencedSOPClassUID","00081155":"ReferencedSOPInstanceUID","00081156":"DefinitionSourceSequence","0008115A":"SOPClassesSupported","00081160":"ReferencedFrameNumber","00081161":"SimpleFrameList","00081162":"CalculatedFrameList","00081163":"TimeRange","00081164":"FrameExtractionSequence","00081167":"MultiFrameSourceSOPInstanceUID","00081190":"RetrieveURL","00081195":"TransactionUID","00081196":"WarningReason","00081197":"FailureReason","00081198":"FailedSOPSequence","00081199":"ReferencedSOPSequence","0008119A":"OtherFailuresSequence","00081200":"StudiesContainingOtherReferencedInstancesSequence","00081250":"RelatedSeriesSequence","00082110":"LossyImageCompressionRetired","00082111":"DerivationDescription","00082112":"SourceImageSequence","00082120":"StageName","00082122":"StageNumber","00082124":"NumberOfStages","00082127":"ViewName","00082128":"ViewNumber","00082129":"NumberOfEventTimers","0008212A":"NumberOfViewsInStage","00082130":"EventElapsedTimes","00082132":"EventTimerNames","00082133":"EventTimerSequence","00082134":"EventTimeOffset","00082135":"EventCodeSequence","00082142":"StartTrim","00082143":"StopTrim","00082144":"RecommendedDisplayFrameRate","00082200":"TransducerPosition","00082204":"TransducerOrientation","00082208":"AnatomicStructure","00082218":"AnatomicRegionSequence","00082220":"AnatomicRegionModifierSequence","00082228":"PrimaryAnatomicStructureSequence","00082229":"AnatomicStructureSpaceOrRegionSequence","00082230":"PrimaryAnatomicStructureModifierSequence","00082240":"TransducerPositionSequence","00082242":"TransducerPositionModifierSequence","00082244":"TransducerOrientationSequence","00082246":"TransducerOrientationModifierSequence","00082251":"AnatomicStructureSpaceOrRegionCodeSequenceTrial","00082253":"AnatomicPortalOfEntranceCodeSequenceTrial","00082255":"AnatomicApproachDirectionCodeSequenceTrial","00082256":"AnatomicPerspectiveDescriptionTrial","00082257":"AnatomicPerspectiveCodeSequenceTrial","00082258":"AnatomicLocationOfExaminingInstrumentDescriptionTrial","00082259":"AnatomicLocationOfExaminingInstrumentCodeSequenceTrial","0008225A":"AnatomicStructureSpaceOrRegionModifierCodeSequenceTrial","0008225C":"OnAxisBackgroundAnatomicStructureCodeSequenceTrial","00083001":"AlternateRepresentationSequence","00083010":"IrradiationEventUID","00083011":"SourceIrradiationEventSequence","00083012":"RadiopharmaceuticalAdministrationEventUID","00084000":"IdentifyingComments","00089007":"FrameType","00089092":"ReferencedImageEvidenceSequence","00089121":"ReferencedRawDataSequence","00089123":"CreatorVersionUID","00089124":"DerivationImageSequence","00089154":"SourceImageEvidenceSequence","00089205":"PixelPresentation","00089206":"VolumetricProperties","00089207":"VolumeBasedCalculationTechnique","00089208":"ComplexImageComponent","00089209":"AcquisitionContrast","00089215":"DerivationCodeSequence","00089237":"ReferencedPresentationStateSequence","00089410":"ReferencedOtherPlaneSequence","00089458":"FrameDisplaySequence","00089459":"RecommendedDisplayFrameRateInFloat","00089460":"SkipFrameRangeFlag","00100010":"PatientName","00100020":"PatientID","00100021":"IssuerOfPatientID","00100022":"TypeOfPatientID","00100024":"IssuerOfPatientIDQualifiersSequence","00100026":"SourcePatientGroupIdentificationSequence","00100027":"GroupOfPatientsIdentificationSequence","00100028":"SubjectRelativePositionInImage","00100030":"PatientBirthDate","00100032":"PatientBirthTime","00100033":"PatientBirthDateInAlternativeCalendar","00100034":"PatientDeathDateInAlternativeCalendar","00100035":"PatientAlternativeCalendar","00100040":"PatientSex","00100050":"PatientInsurancePlanCodeSequence","00100101":"PatientPrimaryLanguageCodeSequence","00100102":"PatientPrimaryLanguageModifierCodeSequence","00100200":"QualityControlSubject","00100201":"QualityControlSubjectTypeCodeSequence","00100212":"StrainDescription","00100213":"StrainNomenclature","00100214":"StrainStockNumber","00100215":"StrainSourceRegistryCodeSequence","00100216":"StrainStockSequence","00100217":"StrainSource","00100218":"StrainAdditionalInformation","00100219":"StrainCodeSequence","00100221":"GeneticModificationsSequence","00100222":"GeneticModificationsDescription","00100223":"GeneticModificationsNomenclature","00100229":"GeneticModificationsCodeSequence","00101000":"OtherPatientIDs","00101001":"OtherPatientNames","00101002":"OtherPatientIDsSequence","00101005":"PatientBirthName","00101010":"PatientAge","00101020":"PatientSize","00101021":"PatientSizeCodeSequence","00101022":"PatientBodyMassIndex","00101023":"MeasuredAPDimension","00101024":"MeasuredLateralDimension","00101030":"PatientWeight","00101040":"PatientAddress","00101050":"InsurancePlanIdentification","00101060":"PatientMotherBirthName","00101080":"MilitaryRank","00101081":"BranchOfService","00101090":"MedicalRecordLocator","00101100":"ReferencedPatientPhotoSequence","00102000":"MedicalAlerts","00102110":"Allergies","00102150":"CountryOfResidence","00102152":"RegionOfResidence","00102154":"PatientTelephoneNumbers","00102155":"PatientTelecomInformation","00102160":"EthnicGroup","00102180":"Occupation","001021A0":"SmokingStatus","001021B0":"AdditionalPatientHistory","001021C0":"PregnancyStatus","001021D0":"LastMenstrualDate","001021F0":"PatientReligiousPreference","00102201":"PatientSpeciesDescription","00102202":"PatientSpeciesCodeSequence","00102203":"PatientSexNeutered","00102210":"AnatomicalOrientationType","00102292":"PatientBreedDescription","00102293":"PatientBreedCodeSequence","00102294":"BreedRegistrationSequence","00102295":"BreedRegistrationNumber","00102296":"BreedRegistryCodeSequence","00102297":"ResponsiblePerson","00102298":"ResponsiblePersonRole","00102299":"ResponsibleOrganization","00104000":"PatientComments","00109431":"ExaminedBodyThickness","00120010":"ClinicalTrialSponsorName","00120020":"ClinicalTrialProtocolID","00120021":"ClinicalTrialProtocolName","00120030":"ClinicalTrialSiteID","00120031":"ClinicalTrialSiteName","00120040":"ClinicalTrialSubjectID","00120042":"ClinicalTrialSubjectReadingID","00120050":"ClinicalTrialTimePointID","00120051":"ClinicalTrialTimePointDescription","00120052":"LongitudinalTemporalOffsetFromEvent","00120053":"LongitudinalTemporalEventType","00120060":"ClinicalTrialCoordinatingCenterName","00120062":"PatientIdentityRemoved","00120063":"DeidentificationMethod","00120064":"DeidentificationMethodCodeSequence","00120071":"ClinicalTrialSeriesID","00120072":"ClinicalTrialSeriesDescription","00120081":"ClinicalTrialProtocolEthicsCommitteeName","00120082":"ClinicalTrialProtocolEthicsCommitteeApprovalNumber","00120083":"ConsentForClinicalTrialUseSequence","00120084":"DistributionType","00120085":"ConsentForDistributionFlag","00120086":"EthicsCommitteeApprovalEffectivenessStartDate","00120087":"EthicsCommitteeApprovalEffectivenessEndDate","00140023":"CADFileFormat","00140024":"ComponentReferenceSystem","00140025":"ComponentManufacturingProcedure","00140028":"ComponentManufacturer","00140030":"MaterialThickness","00140032":"MaterialPipeDiameter","00140034":"MaterialIsolationDiameter","00140042":"MaterialGrade","00140044":"MaterialPropertiesDescription","00140045":"MaterialPropertiesFileFormatRetired","00140046":"MaterialNotes","00140050":"ComponentShape","00140052":"CurvatureType","00140054":"OuterDiameter","00140056":"InnerDiameter","00140100":"ComponentWelderIDs","00140101":"SecondaryApprovalStatus","00140102":"SecondaryReviewDate","00140103":"SecondaryReviewTime","00140104":"SecondaryReviewerName","00140105":"RepairID","00140106":"MultipleComponentApprovalSequence","00140107":"OtherApprovalStatus","00140108":"OtherSecondaryApprovalStatus","00141010":"ActualEnvironmentalConditions","00141020":"ExpiryDate","00141040":"EnvironmentalConditions","00142002":"EvaluatorSequence","00142004":"EvaluatorNumber","00142006":"EvaluatorName","00142008":"EvaluationAttempt","00142012":"IndicationSequence","00142014":"IndicationNumber","00142016":"IndicationLabel","00142018":"IndicationDescription","0014201A":"IndicationType","0014201C":"IndicationDisposition","0014201E":"IndicationROISequence","00142030":"IndicationPhysicalPropertySequence","00142032":"PropertyLabel","00142202":"CoordinateSystemNumberOfAxes","00142204":"CoordinateSystemAxesSequence","00142206":"CoordinateSystemAxisDescription","00142208":"CoordinateSystemDataSetMapping","0014220A":"CoordinateSystemAxisNumber","0014220C":"CoordinateSystemAxisType","0014220E":"CoordinateSystemAxisUnits","00142210":"CoordinateSystemAxisValues","00142220":"CoordinateSystemTransformSequence","00142222":"TransformDescription","00142224":"TransformNumberOfAxes","00142226":"TransformOrderOfAxes","00142228":"TransformedAxisUnits","0014222A":"CoordinateSystemTransformRotationAndScaleMatrix","0014222C":"CoordinateSystemTransformTranslationMatrix","00143011":"InternalDetectorFrameTime","00143012":"NumberOfFramesIntegrated","00143020":"DetectorTemperatureSequence","00143022":"SensorName","00143024":"HorizontalOffsetOfSensor","00143026":"VerticalOffsetOfSensor","00143028":"SensorTemperature","00143040":"DarkCurrentSequence","00143050":"DarkCurrentCounts","00143060":"GainCorrectionReferenceSequence","00143070":"AirCounts","00143071":"KVUsedInGainCalibration","00143072":"MAUsedInGainCalibration","00143073":"NumberOfFramesUsedForIntegration","00143074":"FilterMaterialUsedInGainCalibration","00143075":"FilterThicknessUsedInGainCalibration","00143076":"DateOfGainCalibration","00143077":"TimeOfGainCalibration","00143080":"BadPixelImage","00143099":"CalibrationNotes","00144002":"PulserEquipmentSequence","00144004":"PulserType","00144006":"PulserNotes","00144008":"ReceiverEquipmentSequence","0014400A":"AmplifierType","0014400C":"ReceiverNotes","0014400E":"PreAmplifierEquipmentSequence","0014400F":"PreAmplifierNotes","00144010":"TransmitTransducerSequence","00144011":"ReceiveTransducerSequence","00144012":"NumberOfElements","00144013":"ElementShape","00144014":"ElementDimensionA","00144015":"ElementDimensionB","00144016":"ElementPitchA","00144017":"MeasuredBeamDimensionA","00144018":"MeasuredBeamDimensionB","00144019":"LocationOfMeasuredBeamDiameter","0014401A":"NominalFrequency","0014401B":"MeasuredCenterFrequency","0014401C":"MeasuredBandwidth","0014401D":"ElementPitchB","00144020":"PulserSettingsSequence","00144022":"PulseWidth","00144024":"ExcitationFrequency","00144026":"ModulationType","00144028":"Damping","00144030":"ReceiverSettingsSequence","00144031":"AcquiredSoundpathLength","00144032":"AcquisitionCompressionType","00144033":"AcquisitionSampleSize","00144034":"RectifierSmoothing","00144035":"DACSequence","00144036":"DACType","00144038":"DACGainPoints","0014403A":"DACTimePoints","0014403C":"DACAmplitude","00144040":"PreAmplifierSettingsSequence","00144050":"TransmitTransducerSettingsSequence","00144051":"ReceiveTransducerSettingsSequence","00144052":"IncidentAngle","00144054":"CouplingTechnique","00144056":"CouplingMedium","00144057":"CouplingVelocity","00144058":"ProbeCenterLocationX","00144059":"ProbeCenterLocationZ","0014405A":"SoundPathLength","0014405C":"DelayLawIdentifier","00144060":"GateSettingsSequence","00144062":"GateThreshold","00144064":"VelocityOfSound","00144070":"CalibrationSettingsSequence","00144072":"CalibrationProcedure","00144074":"ProcedureVersion","00144076":"ProcedureCreationDate","00144078":"ProcedureExpirationDate","0014407A":"ProcedureLastModifiedDate","0014407C":"CalibrationTime","0014407E":"CalibrationDate","00144080":"ProbeDriveEquipmentSequence","00144081":"DriveType","00144082":"ProbeDriveNotes","00144083":"DriveProbeSequence","00144084":"ProbeInductance","00144085":"ProbeResistance","00144086":"ReceiveProbeSequence","00144087":"ProbeDriveSettingsSequence","00144088":"BridgeResistors","00144089":"ProbeOrientationAngle","0014408B":"UserSelectedGainY","0014408C":"UserSelectedPhase","0014408D":"UserSelectedOffsetX","0014408E":"UserSelectedOffsetY","00144091":"ChannelSettingsSequence","00144092":"ChannelThreshold","0014409A":"ScannerSettingsSequence","0014409B":"ScanProcedure","0014409C":"TranslationRateX","0014409D":"TranslationRateY","0014409F":"ChannelOverlap","001440A0":"ImageQualityIndicatorType","001440A1":"ImageQualityIndicatorMaterial","001440A2":"ImageQualityIndicatorSize","00145002":"LINACEnergy","00145004":"LINACOutput","00145100":"ActiveAperture","00145101":"TotalAperture","00145102":"ApertureElevation","00145103":"MainLobeAngle","00145104":"MainRoofAngle","00145105":"ConnectorType","00145106":"WedgeModelNumber","00145107":"WedgeAngleFloat","00145108":"WedgeRoofAngle","00145109":"WedgeElement1Position","0014510A":"WedgeMaterialVelocity","0014510B":"WedgeMaterial","0014510C":"WedgeOffsetZ","0014510D":"WedgeOriginOffsetX","0014510E":"WedgeTimeDelay","0014510F":"WedgeName","00145110":"WedgeManufacturerName","00145111":"WedgeDescription","00145112":"NominalBeamAngle","00145113":"WedgeOffsetX","00145114":"WedgeOffsetY","00145115":"WedgeTotalLength","00145116":"WedgeInContactLength","00145117":"WedgeFrontGap","00145118":"WedgeTotalHeight","00145119":"WedgeFrontHeight","0014511A":"WedgeRearHeight","0014511B":"WedgeTotalWidth","0014511C":"WedgeInContactWidth","0014511D":"WedgeChamferHeight","0014511E":"WedgeCurve","0014511F":"RadiusAlongWedge","00180010":"ContrastBolusAgent","00180012":"ContrastBolusAgentSequence","00180013":"ContrastBolusT1Relaxivity","00180014":"ContrastBolusAdministrationRouteSequence","00180015":"BodyPartExamined","00180020":"ScanningSequence","00180021":"SequenceVariant","00180022":"ScanOptions","00180023":"MRAcquisitionType","00180024":"SequenceName","00180025":"AngioFlag","00180026":"InterventionDrugInformationSequence","00180027":"InterventionDrugStopTime","00180028":"InterventionDrugDose","00180029":"InterventionDrugCodeSequence","0018002A":"AdditionalDrugSequence","00180030":"Radionuclide","00180031":"Radiopharmaceutical","00180032":"EnergyWindowCenterline","00180033":"EnergyWindowTotalWidth","00180034":"InterventionDrugName","00180035":"InterventionDrugStartTime","00180036":"InterventionSequence","00180037":"TherapyType","00180038":"InterventionStatus","00180039":"TherapyDescription","0018003A":"InterventionDescription","00180040":"CineRate","00180042":"InitialCineRunState","00180050":"SliceThickness","00180060":"KVP","00180061":"","00180070":"CountsAccumulated","00180071":"AcquisitionTerminationCondition","00180072":"EffectiveDuration","00180073":"AcquisitionStartCondition","00180074":"AcquisitionStartConditionData","00180075":"AcquisitionTerminationConditionData","00180080":"RepetitionTime","00180081":"EchoTime","00180082":"InversionTime","00180083":"NumberOfAverages","00180084":"ImagingFrequency","00180085":"ImagedNucleus","00180086":"EchoNumbers","00180087":"MagneticFieldStrength","00180088":"SpacingBetweenSlices","00180089":"NumberOfPhaseEncodingSteps","00180090":"DataCollectionDiameter","00180091":"EchoTrainLength","00180093":"PercentSampling","00180094":"PercentPhaseFieldOfView","00180095":"PixelBandwidth","00181000":"DeviceSerialNumber","00181002":"DeviceUID","00181003":"DeviceID","00181004":"PlateID","00181005":"GeneratorID","00181006":"GridID","00181007":"CassetteID","00181008":"GantryID","00181009":"UniqueDeviceIdentifier","0018100A":"UDISequence","00181010":"SecondaryCaptureDeviceID","00181011":"HardcopyCreationDeviceID","00181012":"DateOfSecondaryCapture","00181014":"TimeOfSecondaryCapture","00181016":"SecondaryCaptureDeviceManufacturer","00181017":"HardcopyDeviceManufacturer","00181018":"SecondaryCaptureDeviceManufacturerModelName","00181019":"SecondaryCaptureDeviceSoftwareVersions","0018101A":"HardcopyDeviceSoftwareVersion","0018101B":"HardcopyDeviceManufacturerModelName","00181020":"SoftwareVersions","00181022":"VideoImageFormatAcquired","00181023":"DigitalImageFormatAcquired","00181030":"ProtocolName","00181040":"ContrastBolusRoute","00181041":"ContrastBolusVolume","00181042":"ContrastBolusStartTime","00181043":"ContrastBolusStopTime","00181044":"ContrastBolusTotalDose","00181045":"SyringeCounts","00181046":"ContrastFlowRate","00181047":"ContrastFlowDuration","00181048":"ContrastBolusIngredient","00181049":"ContrastBolusIngredientConcentration","00181050":"SpatialResolution","00181060":"TriggerTime","00181061":"TriggerSourceOrType","00181062":"NominalInterval","00181063":"FrameTime","00181064":"CardiacFramingType","00181065":"FrameTimeVector","00181066":"FrameDelay","00181067":"ImageTriggerDelay","00181068":"MultiplexGroupTimeOffset","00181069":"TriggerTimeOffset","0018106A":"SynchronizationTrigger","0018106C":"SynchronizationChannel","0018106E":"TriggerSamplePosition","00181070":"RadiopharmaceuticalRoute","00181071":"RadiopharmaceuticalVolume","00181072":"RadiopharmaceuticalStartTime","00181073":"RadiopharmaceuticalStopTime","00181074":"RadionuclideTotalDose","00181075":"RadionuclideHalfLife","00181076":"RadionuclidePositronFraction","00181077":"RadiopharmaceuticalSpecificActivity","00181078":"RadiopharmaceuticalStartDateTime","00181079":"RadiopharmaceuticalStopDateTime","00181080":"BeatRejectionFlag","00181081":"LowRRValue","00181082":"HighRRValue","00181083":"IntervalsAcquired","00181084":"IntervalsRejected","00181085":"PVCRejection","00181086":"SkipBeats","00181088":"HeartRate","00181090":"CardiacNumberOfImages","00181094":"TriggerWindow","00181100":"ReconstructionDiameter","00181110":"DistanceSourceToDetector","00181111":"DistanceSourceToPatient","00181114":"EstimatedRadiographicMagnificationFactor","00181120":"GantryDetectorTilt","00181121":"GantryDetectorSlew","00181130":"TableHeight","00181131":"TableTraverse","00181134":"TableMotion","00181135":"TableVerticalIncrement","00181136":"TableLateralIncrement","00181137":"TableLongitudinalIncrement","00181138":"TableAngle","0018113A":"TableType","00181140":"RotationDirection","00181141":"AngularPosition","00181142":"RadialPosition","00181143":"ScanArc","00181144":"AngularStep","00181145":"CenterOfRotationOffset","00181146":"RotationOffset","00181147":"FieldOfViewShape","00181149":"FieldOfViewDimensions","00181150":"ExposureTime","00181151":"XRayTubeCurrent","00181152":"Exposure","00181153":"ExposureInuAs","00181154":"AveragePulseWidth","00181155":"RadiationSetting","00181156":"RectificationType","0018115A":"RadiationMode","0018115E":"ImageAndFluoroscopyAreaDoseProduct","00181160":"FilterType","00181161":"TypeOfFilters","00181162":"IntensifierSize","00181164":"ImagerPixelSpacing","00181166":"Grid","00181170":"GeneratorPower","00181180":"CollimatorGridName","00181181":"CollimatorType","00181182":"FocalDistance","00181183":"XFocusCenter","00181184":"YFocusCenter","00181190":"FocalSpots","00181191":"AnodeTargetMaterial","001811A0":"BodyPartThickness","001811A2":"CompressionForce","001811A3":"CompressionPressure","001811A4":"PaddleDescription","001811A5":"CompressionContactArea","00181200":"DateOfLastCalibration","00181201":"TimeOfLastCalibration","00181202":"DateTimeOfLastCalibration","00181210":"ConvolutionKernel","00181240":"UpperLowerPixelValues","00181242":"ActualFrameDuration","00181243":"CountRate","00181244":"PreferredPlaybackSequencing","00181250":"ReceiveCoilName","00181251":"TransmitCoilName","00181260":"PlateType","00181261":"PhosphorType","00181271":"WaterEquivalentDiameter","00181272":"WaterEquivalentDiameterCalculationMethodCodeSequence","00181300":"ScanVelocity","00181301":"WholeBodyTechnique","00181302":"ScanLength","00181310":"AcquisitionMatrix","00181312":"InPlanePhaseEncodingDirection","00181314":"FlipAngle","00181315":"VariableFlipAngleFlag","00181316":"SAR","00181318":"dBdt","00181320":"B1rms","00181400":"AcquisitionDeviceProcessingDescription","00181401":"AcquisitionDeviceProcessingCode","00181402":"CassetteOrientation","00181403":"CassetteSize","00181404":"ExposuresOnPlate","00181405":"RelativeXRayExposure","00181411":"ExposureIndex","00181412":"TargetExposureIndex","00181413":"DeviationIndex","00181450":"ColumnAngulation","00181460":"TomoLayerHeight","00181470":"TomoAngle","00181480":"TomoTime","00181490":"TomoType","00181491":"TomoClass","00181495":"NumberOfTomosynthesisSourceImages","00181500":"PositionerMotion","00181508":"PositionerType","00181510":"PositionerPrimaryAngle","00181511":"PositionerSecondaryAngle","00181520":"PositionerPrimaryAngleIncrement","00181521":"PositionerSecondaryAngleIncrement","00181530":"DetectorPrimaryAngle","00181531":"DetectorSecondaryAngle","00181600":"ShutterShape","00181602":"ShutterLeftVerticalEdge","00181604":"ShutterRightVerticalEdge","00181606":"ShutterUpperHorizontalEdge","00181608":"ShutterLowerHorizontalEdge","00181610":"CenterOfCircularShutter","00181612":"RadiusOfCircularShutter","00181620":"VerticesOfThePolygonalShutter","00181622":"ShutterPresentationValue","00181623":"ShutterOverlayGroup","00181624":"ShutterPresentationColorCIELabValue","00181700":"CollimatorShape","00181702":"CollimatorLeftVerticalEdge","00181704":"CollimatorRightVerticalEdge","00181706":"CollimatorUpperHorizontalEdge","00181708":"CollimatorLowerHorizontalEdge","00181710":"CenterOfCircularCollimator","00181712":"RadiusOfCircularCollimator","00181720":"VerticesOfThePolygonalCollimator","00181800":"AcquisitionTimeSynchronized","00181801":"TimeSource","00181802":"TimeDistributionProtocol","00181803":"NTPSourceAddress","00182001":"PageNumberVector","00182002":"FrameLabelVector","00182003":"FramePrimaryAngleVector","00182004":"FrameSecondaryAngleVector","00182005":"SliceLocationVector","00182006":"DisplayWindowLabelVector","00182010":"NominalScannedPixelSpacing","00182020":"DigitizingDeviceTransportDirection","00182030":"RotationOfScannedFilm","00182041":"BiopsyTargetSequence","00182042":"TargetUID","00182043":"LocalizingCursorPosition","00182044":"CalculatedTargetPosition","00182045":"TargetLabel","00182046":"DisplayedZValue","00183100":"IVUSAcquisition","00183101":"IVUSPullbackRate","00183102":"IVUSGatedRate","00183103":"IVUSPullbackStartFrameNumber","00183104":"IVUSPullbackStopFrameNumber","00183105":"LesionNumber","00184000":"AcquisitionComments","00185000":"OutputPower","00185010":"TransducerData","00185012":"FocusDepth","00185020":"ProcessingFunction","00185021":"PostprocessingFunction","00185022":"MechanicalIndex","00185024":"BoneThermalIndex","00185026":"CranialThermalIndex","00185027":"SoftTissueThermalIndex","00185028":"SoftTissueFocusThermalIndex","00185029":"SoftTissueSurfaceThermalIndex","00185030":"DynamicRange","00185040":"TotalGain","00185050":"DepthOfScanField","00185100":"PatientPosition","00185101":"ViewPosition","00185104":"ProjectionEponymousNameCodeSequence","00185210":"ImageTransformationMatrix","00185212":"ImageTranslationVector","00186000":"Sensitivity","00186011":"SequenceOfUltrasoundRegions","00186012":"RegionSpatialFormat","00186014":"RegionDataType","00186016":"RegionFlags","00186018":"RegionLocationMinX0","0018601A":"RegionLocationMinY0","0018601C":"RegionLocationMaxX1","0018601E":"RegionLocationMaxY1","00186020":"ReferencePixelX0","00186022":"ReferencePixelY0","00186024":"PhysicalUnitsXDirection","00186026":"PhysicalUnitsYDirection","00186028":"ReferencePixelPhysicalValueX","0018602A":"ReferencePixelPhysicalValueY","0018602C":"PhysicalDeltaX","0018602E":"PhysicalDeltaY","00186030":"TransducerFrequency","00186031":"TransducerType","00186032":"PulseRepetitionFrequency","00186034":"DopplerCorrectionAngle","00186036":"SteeringAngle","00186038":"DopplerSampleVolumeXPositionRetired","00186039":"DopplerSampleVolumeXPosition","0018603A":"DopplerSampleVolumeYPositionRetired","0018603B":"DopplerSampleVolumeYPosition","0018603C":"TMLinePositionX0Retired","0018603D":"TMLinePositionX0","0018603E":"TMLinePositionY0Retired","0018603F":"TMLinePositionY0","00186040":"TMLinePositionX1Retired","00186041":"TMLinePositionX1","00186042":"TMLinePositionY1Retired","00186043":"TMLinePositionY1","00186044":"PixelComponentOrganization","00186046":"PixelComponentMask","00186048":"PixelComponentRangeStart","0018604A":"PixelComponentRangeStop","0018604C":"PixelComponentPhysicalUnits","0018604E":"PixelComponentDataType","00186050":"NumberOfTableBreakPoints","00186052":"TableOfXBreakPoints","00186054":"TableOfYBreakPoints","00186056":"NumberOfTableEntries","00186058":"TableOfPixelValues","0018605A":"TableOfParameterValues","00186060":"RWaveTimeVector","00187000":"DetectorConditionsNominalFlag","00187001":"DetectorTemperature","00187004":"DetectorType","00187005":"DetectorConfiguration","00187006":"DetectorDescription","00187008":"DetectorMode","0018700A":"DetectorID","0018700C":"DateOfLastDetectorCalibration","0018700E":"TimeOfLastDetectorCalibration","00187010":"ExposuresOnDetectorSinceLastCalibration","00187011":"ExposuresOnDetectorSinceManufactured","00187012":"DetectorTimeSinceLastExposure","00187014":"DetectorActiveTime","00187016":"DetectorActivationOffsetFromExposure","0018701A":"DetectorBinning","00187020":"DetectorElementPhysicalSize","00187022":"DetectorElementSpacing","00187024":"DetectorActiveShape","00187026":"DetectorActiveDimensions","00187028":"DetectorActiveOrigin","0018702A":"DetectorManufacturerName","0018702B":"DetectorManufacturerModelName","00187030":"FieldOfViewOrigin","00187032":"FieldOfViewRotation","00187034":"FieldOfViewHorizontalFlip","00187036":"PixelDataAreaOriginRelativeToFOV","00187038":"PixelDataAreaRotationAngleRelativeToFOV","00187040":"GridAbsorbingMaterial","00187041":"GridSpacingMaterial","00187042":"GridThickness","00187044":"GridPitch","00187046":"GridAspectRatio","00187048":"GridPeriod","0018704C":"GridFocalDistance","00187050":"FilterMaterial","00187052":"FilterThicknessMinimum","00187054":"FilterThicknessMaximum","00187056":"FilterBeamPathLengthMinimum","00187058":"FilterBeamPathLengthMaximum","00187060":"ExposureControlMode","00187062":"ExposureControlModeDescription","00187064":"ExposureStatus","00187065":"PhototimerSetting","00188150":"ExposureTimeInuS","00188151":"XRayTubeCurrentInuA","00189004":"ContentQualification","00189005":"PulseSequenceName","00189006":"MRImagingModifierSequence","00189008":"EchoPulseSequence","00189009":"InversionRecovery","00189010":"FlowCompensation","00189011":"MultipleSpinEcho","00189012":"MultiPlanarExcitation","00189014":"PhaseContrast","00189015":"TimeOfFlightContrast","00189016":"Spoiling","00189017":"SteadyStatePulseSequence","00189018":"EchoPlanarPulseSequence","00189019":"TagAngleFirstAxis","00189020":"MagnetizationTransfer","00189021":"T2Preparation","00189022":"BloodSignalNulling","00189024":"SaturationRecovery","00189025":"SpectrallySelectedSuppression","00189026":"SpectrallySelectedExcitation","00189027":"SpatialPresaturation","00189028":"Tagging","00189029":"OversamplingPhase","00189030":"TagSpacingFirstDimension","00189032":"GeometryOfKSpaceTraversal","00189033":"SegmentedKSpaceTraversal","00189034":"RectilinearPhaseEncodeReordering","00189035":"TagThickness","00189036":"PartialFourierDirection","00189037":"CardiacSynchronizationTechnique","00189041":"ReceiveCoilManufacturerName","00189042":"MRReceiveCoilSequence","00189043":"ReceiveCoilType","00189044":"QuadratureReceiveCoil","00189045":"MultiCoilDefinitionSequence","00189046":"MultiCoilConfiguration","00189047":"MultiCoilElementName","00189048":"MultiCoilElementUsed","00189049":"MRTransmitCoilSequence","00189050":"TransmitCoilManufacturerName","00189051":"TransmitCoilType","00189052":"SpectralWidth","00189053":"ChemicalShiftReference","00189054":"VolumeLocalizationTechnique","00189058":"MRAcquisitionFrequencyEncodingSteps","00189059":"Decoupling","00189060":"DecoupledNucleus","00189061":"DecouplingFrequency","00189062":"DecouplingMethod","00189063":"DecouplingChemicalShiftReference","00189064":"KSpaceFiltering","00189065":"TimeDomainFiltering","00189066":"NumberOfZeroFills","00189067":"BaselineCorrection","00189069":"ParallelReductionFactorInPlane","00189070":"CardiacRRIntervalSpecified","00189073":"AcquisitionDuration","00189074":"FrameAcquisitionDateTime","00189075":"DiffusionDirectionality","00189076":"DiffusionGradientDirectionSequence","00189077":"ParallelAcquisition","00189078":"ParallelAcquisitionTechnique","00189079":"InversionTimes","00189080":"MetaboliteMapDescription","00189081":"PartialFourier","00189082":"EffectiveEchoTime","00189083":"MetaboliteMapCodeSequence","00189084":"ChemicalShiftSequence","00189085":"CardiacSignalSource","00189087":"DiffusionBValue","00189089":"DiffusionGradientOrientation","00189090":"VelocityEncodingDirection","00189091":"VelocityEncodingMinimumValue","00189092":"VelocityEncodingAcquisitionSequence","00189093":"NumberOfKSpaceTrajectories","00189094":"CoverageOfKSpace","00189095":"SpectroscopyAcquisitionPhaseRows","00189096":"ParallelReductionFactorInPlaneRetired","00189098":"TransmitterFrequency","00189100":"ResonantNucleus","00189101":"FrequencyCorrection","00189103":"MRSpectroscopyFOVGeometrySequence","00189104":"SlabThickness","00189105":"SlabOrientation","00189106":"MidSlabPosition","00189107":"MRSpatialSaturationSequence","00189112":"MRTimingAndRelatedParametersSequence","00189114":"MREchoSequence","00189115":"MRModifierSequence","00189117":"MRDiffusionSequence","00189118":"CardiacSynchronizationSequence","00189119":"MRAveragesSequence","00189125":"MRFOVGeometrySequence","00189126":"VolumeLocalizationSequence","00189127":"SpectroscopyAcquisitionDataColumns","00189147":"DiffusionAnisotropyType","00189151":"FrameReferenceDateTime","00189152":"MRMetaboliteMapSequence","00189155":"ParallelReductionFactorOutOfPlane","00189159":"SpectroscopyAcquisitionOutOfPlanePhaseSteps","00189166":"BulkMotionStatus","00189168":"ParallelReductionFactorSecondInPlane","00189169":"CardiacBeatRejectionTechnique","00189170":"RespiratoryMotionCompensationTechnique","00189171":"RespiratorySignalSource","00189172":"BulkMotionCompensationTechnique","00189173":"BulkMotionSignalSource","00189174":"ApplicableSafetyStandardAgency","00189175":"ApplicableSafetyStandardDescription","00189176":"OperatingModeSequence","00189177":"OperatingModeType","00189178":"OperatingMode","00189179":"SpecificAbsorptionRateDefinition","00189180":"GradientOutputType","00189181":"SpecificAbsorptionRateValue","00189182":"GradientOutput","00189183":"FlowCompensationDirection","00189184":"TaggingDelay","00189185":"RespiratoryMotionCompensationTechniqueDescription","00189186":"RespiratorySignalSourceID","00189195":"ChemicalShiftMinimumIntegrationLimitInHz","00189196":"ChemicalShiftMaximumIntegrationLimitInHz","00189197":"MRVelocityEncodingSequence","00189198":"FirstOrderPhaseCorrection","00189199":"WaterReferencedPhaseCorrection","00189200":"MRSpectroscopyAcquisitionType","00189214":"RespiratoryCyclePosition","00189217":"VelocityEncodingMaximumValue","00189218":"TagSpacingSecondDimension","00189219":"TagAngleSecondAxis","00189220":"FrameAcquisitionDuration","00189226":"MRImageFrameTypeSequence","00189227":"MRSpectroscopyFrameTypeSequence","00189231":"MRAcquisitionPhaseEncodingStepsInPlane","00189232":"MRAcquisitionPhaseEncodingStepsOutOfPlane","00189234":"SpectroscopyAcquisitionPhaseColumns","00189236":"CardiacCyclePosition","00189239":"SpecificAbsorptionRateSequence","00189240":"RFEchoTrainLength","00189241":"GradientEchoTrainLength","00189250":"ArterialSpinLabelingContrast","00189251":"MRArterialSpinLabelingSequence","00189252":"ASLTechniqueDescription","00189253":"ASLSlabNumber","00189254":"ASLSlabThickness","00189255":"ASLSlabOrientation","00189256":"ASLMidSlabPosition","00189257":"ASLContext","00189258":"ASLPulseTrainDuration","00189259":"ASLCrusherFlag","0018925A":"ASLCrusherFlowLimit","0018925B":"ASLCrusherDescription","0018925C":"ASLBolusCutoffFlag","0018925D":"ASLBolusCutoffTimingSequence","0018925E":"ASLBolusCutoffTechnique","0018925F":"ASLBolusCutoffDelayTime","00189260":"ASLSlabSequence","00189295":"ChemicalShiftMinimumIntegrationLimitInppm","00189296":"ChemicalShiftMaximumIntegrationLimitInppm","00189297":"WaterReferenceAcquisition","00189298":"EchoPeakPosition","00189301":"CTAcquisitionTypeSequence","00189302":"AcquisitionType","00189303":"TubeAngle","00189304":"CTAcquisitionDetailsSequence","00189305":"RevolutionTime","00189306":"SingleCollimationWidth","00189307":"TotalCollimationWidth","00189308":"CTTableDynamicsSequence","00189309":"TableSpeed","00189310":"TableFeedPerRotation","00189311":"SpiralPitchFactor","00189312":"CTGeometrySequence","00189313":"DataCollectionCenterPatient","00189314":"CTReconstructionSequence","00189315":"ReconstructionAlgorithm","00189316":"ConvolutionKernelGroup","00189317":"ReconstructionFieldOfView","00189318":"ReconstructionTargetCenterPatient","00189319":"ReconstructionAngle","00189320":"ImageFilter","00189321":"CTExposureSequence","00189322":"ReconstructionPixelSpacing","00189323":"ExposureModulationType","00189324":"EstimatedDoseSaving","00189325":"CTXRayDetailsSequence","00189326":"CTPositionSequence","00189327":"TablePosition","00189328":"ExposureTimeInms","00189329":"CTImageFrameTypeSequence","00189330":"XRayTubeCurrentInmA","00189332":"ExposureInmAs","00189333":"ConstantVolumeFlag","00189334":"FluoroscopyFlag","00189335":"DistanceSourceToDataCollectionCenter","00189337":"ContrastBolusAgentNumber","00189338":"ContrastBolusIngredientCodeSequence","00189340":"ContrastAdministrationProfileSequence","00189341":"ContrastBolusUsageSequence","00189342":"ContrastBolusAgentAdministered","00189343":"ContrastBolusAgentDetected","00189344":"ContrastBolusAgentPhase","00189345":"CTDIvol","00189346":"CTDIPhantomTypeCodeSequence","00189351":"CalciumScoringMassFactorPatient","00189352":"CalciumScoringMassFactorDevice","00189353":"EnergyWeightingFactor","00189360":"CTAdditionalXRaySourceSequence","00189401":"ProjectionPixelCalibrationSequence","00189402":"DistanceSourceToIsocenter","00189403":"DistanceObjectToTableTop","00189404":"ObjectPixelSpacingInCenterOfBeam","00189405":"PositionerPositionSequence","00189406":"TablePositionSequence","00189407":"CollimatorShapeSequence","00189410":"PlanesInAcquisition","00189412":"XAXRFFrameCharacteristicsSequence","00189417":"FrameAcquisitionSequence","00189420":"XRayReceptorType","00189423":"AcquisitionProtocolName","00189424":"AcquisitionProtocolDescription","00189425":"ContrastBolusIngredientOpaque","00189426":"DistanceReceptorPlaneToDetectorHousing","00189427":"IntensifierActiveShape","00189428":"IntensifierActiveDimensions","00189429":"PhysicalDetectorSize","00189430":"PositionOfIsocenterProjection","00189432":"FieldOfViewSequence","00189433":"FieldOfViewDescription","00189434":"ExposureControlSensingRegionsSequence","00189435":"ExposureControlSensingRegionShape","00189436":"ExposureControlSensingRegionLeftVerticalEdge","00189437":"ExposureControlSensingRegionRightVerticalEdge","00189438":"ExposureControlSensingRegionUpperHorizontalEdge","00189439":"ExposureControlSensingRegionLowerHorizontalEdge","00189440":"CenterOfCircularExposureControlSensingRegion","00189441":"RadiusOfCircularExposureControlSensingRegion","00189442":"VerticesOfThePolygonalExposureControlSensingRegion","00189445":"","00189447":"ColumnAngulationPatient","00189449":"BeamAngle","00189451":"FrameDetectorParametersSequence","00189452":"CalculatedAnatomyThickness","00189455":"CalibrationSequence","00189456":"ObjectThicknessSequence","00189457":"PlaneIdentification","00189461":"FieldOfViewDimensionsInFloat","00189462":"IsocenterReferenceSystemSequence","00189463":"PositionerIsocenterPrimaryAngle","00189464":"PositionerIsocenterSecondaryAngle","00189465":"PositionerIsocenterDetectorRotationAngle","00189466":"TableXPositionToIsocenter","00189467":"TableYPositionToIsocenter","00189468":"TableZPositionToIsocenter","00189469":"TableHorizontalRotationAngle","00189470":"TableHeadTiltAngle","00189471":"TableCradleTiltAngle","00189472":"FrameDisplayShutterSequence","00189473":"AcquiredImageAreaDoseProduct","00189474":"CArmPositionerTabletopRelationship","00189476":"XRayGeometrySequence","00189477":"IrradiationEventIdentificationSequence","00189504":"XRay3DFrameTypeSequence","00189506":"ContributingSourcesSequence","00189507":"XRay3DAcquisitionSequence","00189508":"PrimaryPositionerScanArc","00189509":"SecondaryPositionerScanArc","00189510":"PrimaryPositionerScanStartAngle","00189511":"SecondaryPositionerScanStartAngle","00189514":"PrimaryPositionerIncrement","00189515":"SecondaryPositionerIncrement","00189516":"StartAcquisitionDateTime","00189517":"EndAcquisitionDateTime","00189518":"PrimaryPositionerIncrementSign","00189519":"SecondaryPositionerIncrementSign","00189524":"ApplicationName","00189525":"ApplicationVersion","00189526":"ApplicationManufacturer","00189527":"AlgorithmType","00189528":"AlgorithmDescription","00189530":"XRay3DReconstructionSequence","00189531":"ReconstructionDescription","00189538":"PerProjectionAcquisitionSequence","00189541":"DetectorPositionSequence","00189542":"XRayAcquisitionDoseSequence","00189543":"XRaySourceIsocenterPrimaryAngle","00189544":"XRaySourceIsocenterSecondaryAngle","00189545":"BreastSupportIsocenterPrimaryAngle","00189546":"BreastSupportIsocenterSecondaryAngle","00189547":"BreastSupportXPositionToIsocenter","00189548":"BreastSupportYPositionToIsocenter","00189549":"BreastSupportZPositionToIsocenter","00189550":"DetectorIsocenterPrimaryAngle","00189551":"DetectorIsocenterSecondaryAngle","00189552":"DetectorXPositionToIsocenter","00189553":"DetectorYPositionToIsocenter","00189554":"DetectorZPositionToIsocenter","00189555":"XRayGridSequence","00189556":"XRayFilterSequence","00189557":"DetectorActiveAreaTLHCPosition","00189558":"DetectorActiveAreaOrientation","00189559":"PositionerPrimaryAngleDirection","00189601":"DiffusionBMatrixSequence","00189602":"DiffusionBValueXX","00189603":"DiffusionBValueXY","00189604":"DiffusionBValueXZ","00189605":"DiffusionBValueYY","00189606":"DiffusionBValueYZ","00189607":"DiffusionBValueZZ","00189621":"FunctionalMRSequence","00189622":"FunctionalSettlingPhaseFramesPresent","00189623":"FunctionalSyncPulse","00189624":"SettlingPhaseFrame","00189701":"DecayCorrectionDateTime","00189715":"StartDensityThreshold","00189716":"StartRelativeDensityDifferenceThreshold","00189717":"StartCardiacTriggerCountThreshold","00189718":"StartRespiratoryTriggerCountThreshold","00189719":"TerminationCountsThreshold","00189720":"TerminationDensityThreshold","00189721":"TerminationRelativeDensityThreshold","00189722":"TerminationTimeThreshold","00189723":"TerminationCardiacTriggerCountThreshold","00189724":"TerminationRespiratoryTriggerCountThreshold","00189725":"DetectorGeometry","00189726":"TransverseDetectorSeparation","00189727":"AxialDetectorDimension","00189729":"RadiopharmaceuticalAgentNumber","00189732":"PETFrameAcquisitionSequence","00189733":"PETDetectorMotionDetailsSequence","00189734":"PETTableDynamicsSequence","00189735":"PETPositionSequence","00189736":"PETFrameCorrectionFactorsSequence","00189737":"RadiopharmaceuticalUsageSequence","00189738":"AttenuationCorrectionSource","00189739":"NumberOfIterations","00189740":"NumberOfSubsets","00189749":"PETReconstructionSequence","00189751":"PETFrameTypeSequence","00189755":"TimeOfFlightInformationUsed","00189756":"ReconstructionType","00189758":"DecayCorrected","00189759":"AttenuationCorrected","00189760":"ScatterCorrected","00189761":"DeadTimeCorrected","00189762":"GantryMotionCorrected","00189763":"PatientMotionCorrected","00189764":"CountLossNormalizationCorrected","00189765":"RandomsCorrected","00189766":"NonUniformRadialSamplingCorrected","00189767":"SensitivityCalibrated","00189768":"DetectorNormalizationCorrection","00189769":"IterativeReconstructionMethod","00189770":"AttenuationCorrectionTemporalRelationship","00189771":"PatientPhysiologicalStateSequence","00189772":"PatientPhysiologicalStateCodeSequence","00189801":"DepthsOfFocus","00189803":"ExcludedIntervalsSequence","00189804":"ExclusionStartDateTime","00189805":"ExclusionDuration","00189806":"USImageDescriptionSequence","00189807":"ImageDataTypeSequence","00189808":"DataType","00189809":"TransducerScanPatternCodeSequence","0018980B":"AliasedDataType","0018980C":"PositionMeasuringDeviceUsed","0018980D":"TransducerGeometryCodeSequence","0018980E":"TransducerBeamSteeringCodeSequence","0018980F":"TransducerApplicationCodeSequence","00189810":"ZeroVelocityPixelValue","00189900":"ReferenceLocationLabel","00189901":"ReferenceLocationDescription","00189902":"ReferenceBasisCodeSequence","00189903":"ReferenceGeometryCodeSequence","00189904":"OffsetDistance","00189905":"OffsetDirection","00189906":"PotentialScheduledProtocolCodeSequence","00189907":"PotentialRequestedProcedureCodeSequence","00189908":"PotentialReasonsForProcedure","00189909":"PotentialReasonsForProcedureCodeSequence","0018990A":"PotentialDiagnosticTasks","0018990B":"ContraindicationsCodeSequence","0018990C":"ReferencedDefinedProtocolSequence","0018990D":"ReferencedPerformedProtocolSequence","0018990E":"PredecessorProtocolSequence","0018990F":"ProtocolPlanningInformation","00189910":"ProtocolDesignRationale","00189911":"PatientSpecificationSequence","00189912":"ModelSpecificationSequence","00189913":"ParametersSpecificationSequence","00189914":"InstructionSequence","00189915":"InstructionIndex","00189916":"InstructionText","00189917":"InstructionDescription","00189918":"InstructionPerformedFlag","00189919":"InstructionPerformedDateTime","0018991A":"InstructionPerformanceComment","0018991B":"PatientPositioningInstructionSequence","0018991C":"PositioningMethodCodeSequence","0018991D":"PositioningLandmarkSequence","0018991E":"TargetFrameOfReferenceUID","0018991F":"AcquisitionProtocolElementSpecificationSequence","00189920":"AcquisitionProtocolElementSequence","00189921":"ProtocolElementNumber","00189922":"ProtocolElementName","00189923":"ProtocolElementCharacteristicsSummary","00189924":"ProtocolElementPurpose","00189930":"AcquisitionMotion","00189931":"AcquisitionStartLocationSequence","00189932":"AcquisitionEndLocationSequence","00189933":"ReconstructionProtocolElementSpecificationSequence","00189934":"ReconstructionProtocolElementSequence","00189935":"StorageProtocolElementSpecificationSequence","00189936":"StorageProtocolElementSequence","00189937":"RequestedSeriesDescription","00189938":"SourceAcquisitionProtocolElementNumber","00189939":"SourceAcquisitionBeamNumber","0018993A":"SourceReconstructionProtocolElementNumber","0018993B":"ReconstructionStartLocationSequence","0018993C":"ReconstructionEndLocationSequence","0018993D":"ReconstructionAlgorithmSequence","0018993E":"ReconstructionTargetCenterLocationSequence","00189941":"ImageFilterDescription","00189942":"CTDIvolNotificationTrigger","00189943":"DLPNotificationTrigger","00189944":"AutoKVPSelectionType","00189945":"AutoKVPUpperBound","00189946":"AutoKVPLowerBound","00189947":"ProtocolDefinedPatientPosition","0018A001":"ContributingEquipmentSequence","0018A002":"ContributionDateTime","0018A003":"ContributionDescription","0020000D":"StudyInstanceUID","0020000E":"SeriesInstanceUID","00200010":"StudyID","00200011":"SeriesNumber","00200012":"AcquisitionNumber","00200013":"InstanceNumber","00200014":"IsotopeNumber","00200015":"PhaseNumber","00200016":"IntervalNumber","00200017":"TimeSlotNumber","00200018":"AngleNumber","00200019":"ItemNumber","00200020":"PatientOrientation","00200022":"OverlayNumber","00200024":"CurveNumber","00200026":"LUTNumber","00200030":"ImagePosition","00200032":"ImagePositionPatient","00200035":"ImageOrientation","00200037":"ImageOrientationPatient","00200050":"Location","00200052":"FrameOfReferenceUID","00200060":"Laterality","00200062":"ImageLaterality","00200070":"ImageGeometryType","00200080":"MaskingImage","002000AA":"ReportNumber","00200100":"TemporalPositionIdentifier","00200105":"NumberOfTemporalPositions","00200110":"TemporalResolution","00200200":"SynchronizationFrameOfReferenceUID","00200242":"SOPInstanceUIDOfConcatenationSource","00201000":"SeriesInStudy","00201001":"AcquisitionsInSeries","00201002":"ImagesInAcquisition","00201003":"ImagesInSeries","00201004":"AcquisitionsInStudy","00201005":"ImagesInStudy","00201020":"Reference","0020103F":"TargetPositionReferenceIndicator","00201040":"PositionReferenceIndicator","00201041":"SliceLocation","00201070":"OtherStudyNumbers","00201200":"NumberOfPatientRelatedStudies","00201202":"NumberOfPatientRelatedSeries","00201204":"NumberOfPatientRelatedInstances","00201206":"NumberOfStudyRelatedSeries","00201208":"NumberOfStudyRelatedInstances","00201209":"NumberOfSeriesRelatedInstances","00203401":"ModifyingDeviceID","00203402":"ModifiedImageID","00203403":"ModifiedImageDate","00203404":"ModifyingDeviceManufacturer","00203405":"ModifiedImageTime","00203406":"ModifiedImageDescription","00204000":"ImageComments","00205000":"OriginalImageIdentification","00205002":"OriginalImageIdentificationNomenclature","00209056":"StackID","00209057":"InStackPositionNumber","00209071":"FrameAnatomySequence","00209072":"FrameLaterality","00209111":"FrameContentSequence","00209113":"PlanePositionSequence","00209116":"PlaneOrientationSequence","00209128":"TemporalPositionIndex","00209153":"NominalCardiacTriggerDelayTime","00209154":"NominalCardiacTriggerTimePriorToRPeak","00209155":"ActualCardiacTriggerTimePriorToRPeak","00209156":"FrameAcquisitionNumber","00209157":"DimensionIndexValues","00209158":"FrameComments","00209161":"ConcatenationUID","00209162":"InConcatenationNumber","00209163":"InConcatenationTotalNumber","00209164":"DimensionOrganizationUID","00209165":"DimensionIndexPointer","00209167":"FunctionalGroupPointer","00209170":"UnassignedSharedConvertedAttributesSequence","00209171":"UnassignedPerFrameConvertedAttributesSequence","00209172":"ConversionSourceAttributesSequence","00209213":"DimensionIndexPrivateCreator","00209221":"DimensionOrganizationSequence","00209222":"DimensionIndexSequence","00209228":"ConcatenationFrameOffsetNumber","00209238":"FunctionalGroupPrivateCreator","00209241":"NominalPercentageOfCardiacPhase","00209245":"NominalPercentageOfRespiratoryPhase","00209246":"StartingRespiratoryAmplitude","00209247":"StartingRespiratoryPhase","00209248":"EndingRespiratoryAmplitude","00209249":"EndingRespiratoryPhase","00209250":"RespiratoryTriggerType","00209251":"RRIntervalTimeNominal","00209252":"ActualCardiacTriggerDelayTime","00209253":"RespiratorySynchronizationSequence","00209254":"RespiratoryIntervalTime","00209255":"NominalRespiratoryTriggerDelayTime","00209256":"RespiratoryTriggerDelayThreshold","00209257":"ActualRespiratoryTriggerDelayTime","00209301":"ImagePositionVolume","00209302":"ImageOrientationVolume","00209307":"UltrasoundAcquisitionGeometry","00209308":"ApexPosition","00209309":"VolumeToTransducerMappingMatrix","0020930A":"VolumeToTableMappingMatrix","0020930B":"VolumeToTransducerRelationship","0020930C":"PatientFrameOfReferenceSource","0020930D":"TemporalPositionTimeOffset","0020930E":"PlanePositionVolumeSequence","0020930F":"PlaneOrientationVolumeSequence","00209310":"TemporalPositionSequence","00209311":"DimensionOrganizationType","00209312":"VolumeFrameOfReferenceUID","00209313":"TableFrameOfReferenceUID","00209421":"DimensionDescriptionLabel","00209450":"PatientOrientationInFrameSequence","00209453":"FrameLabel","00209518":"AcquisitionIndex","00209529":"ContributingSOPInstancesReferenceSequence","00209536":"ReconstructionIndex","00220001":"LightPathFilterPassThroughWavelength","00220002":"LightPathFilterPassBand","00220003":"ImagePathFilterPassThroughWavelength","00220004":"ImagePathFilterPassBand","00220005":"PatientEyeMovementCommanded","00220006":"PatientEyeMovementCommandCodeSequence","00220007":"SphericalLensPower","00220008":"CylinderLensPower","00220009":"CylinderAxis","0022000A":"EmmetropicMagnification","0022000B":"IntraOcularPressure","0022000C":"HorizontalFieldOfView","0022000D":"PupilDilated","0022000E":"DegreeOfDilation","00220010":"StereoBaselineAngle","00220011":"StereoBaselineDisplacement","00220012":"StereoHorizontalPixelOffset","00220013":"StereoVerticalPixelOffset","00220014":"StereoRotation","00220015":"AcquisitionDeviceTypeCodeSequence","00220016":"IlluminationTypeCodeSequence","00220017":"LightPathFilterTypeStackCodeSequence","00220018":"ImagePathFilterTypeStackCodeSequence","00220019":"LensesCodeSequence","0022001A":"ChannelDescriptionCodeSequence","0022001B":"RefractiveStateSequence","0022001C":"MydriaticAgentCodeSequence","0022001D":"RelativeImagePositionCodeSequence","0022001E":"CameraAngleOfView","00220020":"StereoPairsSequence","00220021":"LeftImageSequence","00220022":"RightImageSequence","00220028":"StereoPairsPresent","00220030":"AxialLengthOfTheEye","00220031":"OphthalmicFrameLocationSequence","00220032":"ReferenceCoordinates","00220035":"DepthSpatialResolution","00220036":"MaximumDepthDistortion","00220037":"AlongScanSpatialResolution","00220038":"MaximumAlongScanDistortion","00220039":"OphthalmicImageOrientation","00220041":"DepthOfTransverseImage","00220042":"MydriaticAgentConcentrationUnitsSequence","00220048":"AcrossScanSpatialResolution","00220049":"MaximumAcrossScanDistortion","0022004E":"MydriaticAgentConcentration","00220055":"IlluminationWaveLength","00220056":"IlluminationPower","00220057":"IlluminationBandwidth","00220058":"MydriaticAgentSequence","00221007":"OphthalmicAxialMeasurementsRightEyeSequence","00221008":"OphthalmicAxialMeasurementsLeftEyeSequence","00221009":"OphthalmicAxialMeasurementsDeviceType","00221010":"OphthalmicAxialLengthMeasurementsType","00221012":"OphthalmicAxialLengthSequence","00221019":"OphthalmicAxialLength","00221024":"LensStatusCodeSequence","00221025":"VitreousStatusCodeSequence","00221028":"IOLFormulaCodeSequence","00221029":"IOLFormulaDetail","00221033":"KeratometerIndex","00221035":"SourceOfOphthalmicAxialLengthCodeSequence","00221037":"TargetRefraction","00221039":"RefractiveProcedureOccurred","00221040":"RefractiveSurgeryTypeCodeSequence","00221044":"OphthalmicUltrasoundMethodCodeSequence","00221050":"OphthalmicAxialLengthMeasurementsSequence","00221053":"IOLPower","00221054":"PredictedRefractiveError","00221059":"OphthalmicAxialLengthVelocity","00221065":"LensStatusDescription","00221066":"VitreousStatusDescription","00221090":"IOLPowerSequence","00221092":"LensConstantSequence","00221093":"IOLManufacturer","00221094":"LensConstantDescription","00221095":"ImplantName","00221096":"KeratometryMeasurementTypeCodeSequence","00221097":"ImplantPartNumber","00221100":"ReferencedOphthalmicAxialMeasurementsSequence","00221101":"OphthalmicAxialLengthMeasurementsSegmentNameCodeSequence","00221103":"RefractiveErrorBeforeRefractiveSurgeryCodeSequence","00221121":"IOLPowerForExactEmmetropia","00221122":"IOLPowerForExactTargetRefraction","00221125":"AnteriorChamberDepthDefinitionCodeSequence","00221127":"LensThicknessSequence","00221128":"AnteriorChamberDepthSequence","00221130":"LensThickness","00221131":"AnteriorChamberDepth","00221132":"SourceOfLensThicknessDataCodeSequence","00221133":"SourceOfAnteriorChamberDepthDataCodeSequence","00221134":"SourceOfRefractiveMeasurementsSequence","00221135":"SourceOfRefractiveMeasurementsCodeSequence","00221140":"OphthalmicAxialLengthMeasurementModified","00221150":"OphthalmicAxialLengthDataSourceCodeSequence","00221153":"OphthalmicAxialLengthAcquisitionMethodCodeSequence","00221155":"SignalToNoiseRatio","00221159":"OphthalmicAxialLengthDataSourceDescription","00221210":"OphthalmicAxialLengthMeasurementsTotalLengthSequence","00221211":"OphthalmicAxialLengthMeasurementsSegmentalLengthSequence","00221212":"OphthalmicAxialLengthMeasurementsLengthSummationSequence","00221220":"UltrasoundOphthalmicAxialLengthMeasurementsSequence","00221225":"OpticalOphthalmicAxialLengthMeasurementsSequence","00221230":"UltrasoundSelectedOphthalmicAxialLengthSequence","00221250":"OphthalmicAxialLengthSelectionMethodCodeSequence","00221255":"OpticalSelectedOphthalmicAxialLengthSequence","00221257":"SelectedSegmentalOphthalmicAxialLengthSequence","00221260":"SelectedTotalOphthalmicAxialLengthSequence","00221262":"OphthalmicAxialLengthQualityMetricSequence","00221265":"OphthalmicAxialLengthQualityMetricTypeCodeSequence","00221273":"OphthalmicAxialLengthQualityMetricTypeDescription","00221300":"IntraocularLensCalculationsRightEyeSequence","00221310":"IntraocularLensCalculationsLeftEyeSequence","00221330":"ReferencedOphthalmicAxialLengthMeasurementQCImageSequence","00221415":"OphthalmicMappingDeviceType","00221420":"AcquisitionMethodCodeSequence","00221423":"AcquisitionMethodAlgorithmSequence","00221436":"OphthalmicThicknessMapTypeCodeSequence","00221443":"OphthalmicThicknessMappingNormalsSequence","00221445":"RetinalThicknessDefinitionCodeSequence","00221450":"PixelValueMappingToCodedConceptSequence","00221452":"MappedPixelValue","00221454":"PixelValueMappingExplanation","00221458":"OphthalmicThicknessMapQualityThresholdSequence","00221460":"OphthalmicThicknessMapThresholdQualityRating","00221463":"AnatomicStructureReferencePoint","00221465":"RegistrationToLocalizerSequence","00221466":"RegisteredLocalizerUnits","00221467":"RegisteredLocalizerTopLeftHandCorner","00221468":"RegisteredLocalizerBottomRightHandCorner","00221470":"OphthalmicThicknessMapQualityRatingSequence","00221472":"RelevantOPTAttributesSequence","00221512":"TransformationMethodCodeSequence","00221513":"TransformationAlgorithmSequence","00221515":"OphthalmicAxialLengthMethod","00221517":"OphthalmicFOV","00221518":"TwoDimensionalToThreeDimensionalMapSequence","00221525":"WideFieldOphthalmicPhotographyQualityRatingSequence","00221526":"WideFieldOphthalmicPhotographyQualityThresholdSequence","00221527":"WideFieldOphthalmicPhotographyThresholdQualityRating","00221528":"XCoordinatesCenterPixelViewAngle","00221529":"YCoordinatesCenterPixelViewAngle","00221530":"NumberOfMapPoints","00221531":"TwoDimensionalToThreeDimensionalMapData","00221612":"DerivationAlgorithmSequence","00221615":"OphthalmicImageTypeCodeSequence","00221616":"OphthalmicImageTypeDescription","00221618":"ScanPatternTypeCodeSequence","00221620":"ReferencedSurfaceMeshIdentificationSequence","00221622":"OphthalmicVolumetricPropertiesFlag","00221624":"OphthalmicAnatomicReferencePointXCoordinate","00221626":"OphthalmicAnatomicReferencePointYCoordinate","00221628":"OphthalmicEnFaceImageQualityRatingSequence","00221630":"QualityThreshold","00221640":"OCTBscanAnalysisAcquisitionParametersSequence","00221642":"NumberofBscansPerFrame","00221643":"BscanSlabThickness","00221644":"DistanceBetweenBscanSlabs","00221645":"BscanCycleTime","00221646":"BscanCycleTimeVector","00221649":"AscanRate","00221650":"BscanRate","00221658":"SurfaceMeshZPixelOffset","00240010":"VisualFieldHorizontalExtent","00240011":"VisualFieldVerticalExtent","00240012":"VisualFieldShape","00240016":"ScreeningTestModeCodeSequence","00240018":"MaximumStimulusLuminance","00240020":"BackgroundLuminance","00240021":"StimulusColorCodeSequence","00240024":"BackgroundIlluminationColorCodeSequence","00240025":"StimulusArea","00240028":"StimulusPresentationTime","00240032":"FixationSequence","00240033":"FixationMonitoringCodeSequence","00240034":"VisualFieldCatchTrialSequence","00240035":"FixationCheckedQuantity","00240036":"PatientNotProperlyFixatedQuantity","00240037":"PresentedVisualStimuliDataFlag","00240038":"NumberOfVisualStimuli","00240039":"ExcessiveFixationLossesDataFlag","00240040":"ExcessiveFixationLosses","00240042":"StimuliRetestingQuantity","00240044":"CommentsOnPatientPerformanceOfVisualField","00240045":"FalseNegativesEstimateFlag","00240046":"FalseNegativesEstimate","00240048":"NegativeCatchTrialsQuantity","00240050":"FalseNegativesQuantity","00240051":"ExcessiveFalseNegativesDataFlag","00240052":"ExcessiveFalseNegatives","00240053":"FalsePositivesEstimateFlag","00240054":"FalsePositivesEstimate","00240055":"CatchTrialsDataFlag","00240056":"PositiveCatchTrialsQuantity","00240057":"TestPointNormalsDataFlag","00240058":"TestPointNormalsSequence","00240059":"GlobalDeviationProbabilityNormalsFlag","00240060":"FalsePositivesQuantity","00240061":"ExcessiveFalsePositivesDataFlag","00240062":"ExcessiveFalsePositives","00240063":"VisualFieldTestNormalsFlag","00240064":"ResultsNormalsSequence","00240065":"AgeCorrectedSensitivityDeviationAlgorithmSequence","00240066":"GlobalDeviationFromNormal","00240067":"GeneralizedDefectSensitivityDeviationAlgorithmSequence","00240068":"LocalizedDeviationFromNormal","00240069":"PatientReliabilityIndicator","00240070":"VisualFieldMeanSensitivity","00240071":"GlobalDeviationProbability","00240072":"LocalDeviationProbabilityNormalsFlag","00240073":"LocalizedDeviationProbability","00240074":"ShortTermFluctuationCalculated","00240075":"ShortTermFluctuation","00240076":"ShortTermFluctuationProbabilityCalculated","00240077":"ShortTermFluctuationProbability","00240078":"CorrectedLocalizedDeviationFromNormalCalculated","00240079":"CorrectedLocalizedDeviationFromNormal","00240080":"CorrectedLocalizedDeviationFromNormalProbabilityCalculated","00240081":"CorrectedLocalizedDeviationFromNormalProbability","00240083":"GlobalDeviationProbabilitySequence","00240085":"LocalizedDeviationProbabilitySequence","00240086":"FovealSensitivityMeasured","00240087":"FovealSensitivity","00240088":"VisualFieldTestDuration","00240089":"VisualFieldTestPointSequence","00240090":"VisualFieldTestPointXCoordinate","00240091":"VisualFieldTestPointYCoordinate","00240092":"AgeCorrectedSensitivityDeviationValue","00240093":"StimulusResults","00240094":"SensitivityValue","00240095":"RetestStimulusSeen","00240096":"RetestSensitivityValue","00240097":"VisualFieldTestPointNormalsSequence","00240098":"QuantifiedDefect","00240100":"AgeCorrectedSensitivityDeviationProbabilityValue","00240102":"GeneralizedDefectCorrectedSensitivityDeviationFlag","00240103":"GeneralizedDefectCorrectedSensitivityDeviationValue","00240104":"GeneralizedDefectCorrectedSensitivityDeviationProbabilityValue","00240105":"MinimumSensitivityValue","00240106":"BlindSpotLocalized","00240107":"BlindSpotXCoordinate","00240108":"BlindSpotYCoordinate","00240110":"VisualAcuityMeasurementSequence","00240112":"RefractiveParametersUsedOnPatientSequence","00240113":"MeasurementLaterality","00240114":"OphthalmicPatientClinicalInformationLeftEyeSequence","00240115":"OphthalmicPatientClinicalInformationRightEyeSequence","00240117":"FovealPointNormativeDataFlag","00240118":"FovealPointProbabilityValue","00240120":"ScreeningBaselineMeasured","00240122":"ScreeningBaselineMeasuredSequence","00240124":"ScreeningBaselineType","00240126":"ScreeningBaselineValue","00240202":"AlgorithmSource","00240306":"DataSetName","00240307":"DataSetVersion","00240308":"DataSetSource","00240309":"DataSetDescription","00240317":"VisualFieldTestReliabilityGlobalIndexSequence","00240320":"VisualFieldGlobalResultsIndexSequence","00240325":"DataObservationSequence","00240338":"IndexNormalsFlag","00240341":"IndexProbability","00240344":"IndexProbabilitySequence","00280002":"SamplesPerPixel","00280003":"SamplesPerPixelUsed","00280004":"PhotometricInterpretation","00280005":"ImageDimensions","00280006":"PlanarConfiguration","00280008":"NumberOfFrames","00280009":"FrameIncrementPointer","0028000A":"FrameDimensionPointer","00280010":"Rows","00280011":"Columns","00280012":"Planes","00280014":"UltrasoundColorDataPresent","00280020":"","00280030":"PixelSpacing","00280031":"ZoomFactor","00280032":"ZoomCenter","00280034":"PixelAspectRatio","00280040":"ImageFormat","00280050":"ManipulatedImage","00280051":"CorrectedImage","0028005F":"CompressionRecognitionCode","00280060":"CompressionCode","00280061":"CompressionOriginator","00280062":"CompressionLabel","00280063":"CompressionDescription","00280065":"CompressionSequence","00280066":"CompressionStepPointers","00280068":"RepeatInterval","00280069":"BitsGrouped","00280070":"PerimeterTable","00280071":"PerimeterValue","00280080":"PredictorRows","00280081":"PredictorColumns","00280082":"PredictorConstants","00280090":"BlockedPixels","00280091":"BlockRows","00280092":"BlockColumns","00280093":"RowOverlap","00280094":"ColumnOverlap","00280100":"BitsAllocated","00280101":"BitsStored","00280102":"HighBit","00280103":"PixelRepresentation","00280104":"SmallestValidPixelValue","00280105":"LargestValidPixelValue","00280106":"SmallestImagePixelValue","00280107":"LargestImagePixelValue","00280108":"SmallestPixelValueInSeries","00280109":"LargestPixelValueInSeries","00280110":"SmallestImagePixelValueInPlane","00280111":"LargestImagePixelValueInPlane","00280120":"PixelPaddingValue","00280121":"PixelPaddingRangeLimit","00280122":"FloatPixelPaddingValue","00280123":"DoubleFloatPixelPaddingValue","00280124":"FloatPixelPaddingRangeLimit","00280125":"DoubleFloatPixelPaddingRangeLimit","00280200":"ImageLocation","00280300":"QualityControlImage","00280301":"BurnedInAnnotation","00280302":"RecognizableVisualFeatures","00280303":"LongitudinalTemporalInformationModified","00280304":"ReferencedColorPaletteInstanceUID","00280400":"TransformLabel","00280401":"TransformVersionNumber","00280402":"NumberOfTransformSteps","00280403":"SequenceOfCompressedData","00280404":"DetailsOfCoefficients","00280700":"DCTLabel","00280701":"DataBlockDescription","00280702":"DataBlock","00280710":"NormalizationFactorFormat","00280720":"ZonalMapNumberFormat","00280721":"ZonalMapLocation","00280722":"ZonalMapFormat","00280730":"AdaptiveMapFormat","00280740":"CodeNumberFormat","00280A02":"PixelSpacingCalibrationType","00280A04":"PixelSpacingCalibrationDescription","00281040":"PixelIntensityRelationship","00281041":"PixelIntensityRelationshipSign","00281050":"WindowCenter","00281051":"WindowWidth","00281052":"RescaleIntercept","00281053":"RescaleSlope","00281054":"RescaleType","00281055":"WindowCenterWidthExplanation","00281056":"VOILUTFunction","00281080":"GrayScale","00281090":"RecommendedViewingMode","00281100":"GrayLookupTableDescriptor","00281101":"RedPaletteColorLookupTableDescriptor","00281102":"GreenPaletteColorLookupTableDescriptor","00281103":"BluePaletteColorLookupTableDescriptor","00281104":"AlphaPaletteColorLookupTableDescriptor","00281111":"LargeRedPaletteColorLookupTableDescriptor","00281112":"LargeGreenPaletteColorLookupTableDescriptor","00281113":"LargeBluePaletteColorLookupTableDescriptor","00281199":"PaletteColorLookupTableUID","00281200":"GrayLookupTableData","00281201":"RedPaletteColorLookupTableData","00281202":"GreenPaletteColorLookupTableData","00281203":"BluePaletteColorLookupTableData","00281204":"AlphaPaletteColorLookupTableData","00281211":"LargeRedPaletteColorLookupTableData","00281212":"LargeGreenPaletteColorLookupTableData","00281213":"LargeBluePaletteColorLookupTableData","00281214":"LargePaletteColorLookupTableUID","00281221":"SegmentedRedPaletteColorLookupTableData","00281222":"SegmentedGreenPaletteColorLookupTableData","00281223":"SegmentedBluePaletteColorLookupTableData","00281224":"SegmentedAlphaPaletteColorLookupTableData","00281230":"StoredValueColorRangeSequence","00281231":"MinimumStoredValueMapped","00281232":"MaximumStoredValueMapped","00281300":"BreastImplantPresent","00281350":"PartialView","00281351":"PartialViewDescription","00281352":"PartialViewCodeSequence","0028135A":"SpatialLocationsPreserved","00281401":"DataFrameAssignmentSequence","00281402":"DataPathAssignment","00281403":"BitsMappedToColorLookupTable","00281404":"BlendingLUT1Sequence","00281405":"BlendingLUT1TransferFunction","00281406":"BlendingWeightConstant","00281407":"BlendingLookupTableDescriptor","00281408":"BlendingLookupTableData","0028140B":"EnhancedPaletteColorLookupTableSequence","0028140C":"BlendingLUT2Sequence","0028140D":"BlendingLUT2TransferFunction","0028140E":"DataPathID","0028140F":"RGBLUTTransferFunction","00281410":"AlphaLUTTransferFunction","00282000":"ICCProfile","00282002":"ColorSpace","00282110":"LossyImageCompression","00282112":"LossyImageCompressionRatio","00282114":"LossyImageCompressionMethod","00283000":"ModalityLUTSequence","00283002":"LUTDescriptor","00283003":"LUTExplanation","00283004":"ModalityLUTType","00283006":"LUTData","00283010":"VOILUTSequence","00283110":"SoftcopyVOILUTSequence","00284000":"ImagePresentationComments","00285000":"BiPlaneAcquisitionSequence","00286010":"RepresentativeFrameNumber","00286020":"FrameNumbersOfInterest","00286022":"FrameOfInterestDescription","00286023":"FrameOfInterestType","00286030":"MaskPointers","00286040":"RWavePointer","00286100":"MaskSubtractionSequence","00286101":"MaskOperation","00286102":"ApplicableFrameRange","00286110":"MaskFrameNumbers","00286112":"ContrastFrameAveraging","00286114":"MaskSubPixelShift","00286120":"TIDOffset","00286190":"MaskOperationExplanation","00287000":"EquipmentAdministratorSequence","00287001":"NumberOfDisplaySubsystems","00287002":"CurrentConfigurationID","00287003":"DisplaySubsystemID","00287004":"DisplaySubsystemName","00287005":"DisplaySubsystemDescription","00287006":"SystemStatus","00287007":"SystemStatusComment","00287008":"TargetLuminanceCharacteristicsSequence","00287009":"LuminanceCharacteristicsID","0028700A":"DisplaySubsystemConfigurationSequence","0028700B":"ConfigurationID","0028700C":"ConfigurationName","0028700D":"ConfigurationDescription","0028700E":"ReferencedTargetLuminanceCharacteristicsID","0028700F":"QAResultsSequence","00287010":"DisplaySubsystemQAResultsSequence","00287011":"ConfigurationQAResultsSequence","00287012":"MeasurementEquipmentSequence","00287013":"MeasurementFunctions","00287014":"MeasurementEquipmentType","00287015":"VisualEvaluationResultSequence","00287016":"DisplayCalibrationResultSequence","00287017":"DDLValue","00287018":"CIExyWhitePoint","00287019":"DisplayFunctionType","0028701A":"GammaValue","0028701B":"NumberOfLuminancePoints","0028701C":"LuminanceResponseSequence","0028701D":"TargetMinimumLuminance","0028701E":"TargetMaximumLuminance","0028701F":"LuminanceValue","00287020":"LuminanceResponseDescription","00287021":"WhitePointFlag","00287022":"DisplayDeviceTypeCodeSequence","00287023":"DisplaySubsystemSequence","00287024":"LuminanceResultSequence","00287025":"AmbientLightValueSource","00287026":"MeasuredCharacteristics","00287027":"LuminanceUniformityResultSequence","00287028":"VisualEvaluationTestSequence","00287029":"TestResult","0028702A":"TestResultComment","0028702B":"TestImageValidation","0028702C":"TestPatternCodeSequence","0028702D":"MeasurementPatternCodeSequence","0028702E":"VisualEvaluationMethodCodeSequence","00287FE0":"PixelDataProviderURL","00289001":"DataPointRows","00289002":"DataPointColumns","00289003":"SignalDomainColumns","00289099":"LargestMonochromePixelValue","00289108":"DataRepresentation","00289110":"PixelMeasuresSequence","00289132":"FrameVOILUTSequence","00289145":"PixelValueTransformationSequence","00289235":"SignalDomainRows","00289411":"DisplayFilterPercentage","00289415":"FramePixelShiftSequence","00289416":"SubtractionItemID","00289422":"PixelIntensityRelationshipLUTSequence","00289443":"FramePixelDataPropertiesSequence","00289444":"GeometricalProperties","00289445":"GeometricMaximumDistortion","00289446":"ImageProcessingApplied","00289454":"MaskSelectionMode","00289474":"LUTFunction","00289478":"MaskVisibilityPercentage","00289501":"PixelShiftSequence","00289502":"RegionPixelShiftSequence","00289503":"VerticesOfTheRegion","00289505":"MultiFramePresentationSequence","00289506":"PixelShiftFrameRange","00289507":"LUTFrameRange","00289520":"ImageToEquipmentMappingMatrix","00289537":"EquipmentCoordinateSystemIdentification","0032000A":"StudyStatusID","0032000C":"StudyPriorityID","00320012":"StudyIDIssuer","00320032":"StudyVerifiedDate","00320033":"StudyVerifiedTime","00320034":"StudyReadDate","00320035":"StudyReadTime","00321000":"ScheduledStudyStartDate","00321001":"ScheduledStudyStartTime","00321010":"ScheduledStudyStopDate","00321011":"ScheduledStudyStopTime","00321020":"ScheduledStudyLocation","00321021":"ScheduledStudyLocationAETitle","00321030":"ReasonForStudy","00321031":"RequestingPhysicianIdentificationSequence","00321032":"RequestingPhysician","00321033":"RequestingService","00321034":"RequestingServiceCodeSequence","00321040":"StudyArrivalDate","00321041":"StudyArrivalTime","00321050":"StudyCompletionDate","00321051":"StudyCompletionTime","00321055":"StudyComponentStatusID","00321060":"RequestedProcedureDescription","00321064":"RequestedProcedureCodeSequence","00321070":"RequestedContrastAgent","00324000":"StudyComments","00380004":"ReferencedPatientAliasSequence","00380008":"VisitStatusID","00380010":"AdmissionID","00380011":"IssuerOfAdmissionID","00380014":"IssuerOfAdmissionIDSequence","00380016":"RouteOfAdmissions","0038001A":"ScheduledAdmissionDate","0038001B":"ScheduledAdmissionTime","0038001C":"ScheduledDischargeDate","0038001D":"ScheduledDischargeTime","0038001E":"ScheduledPatientInstitutionResidence","00380020":"AdmittingDate","00380021":"AdmittingTime","00380030":"DischargeDate","00380032":"DischargeTime","00380040":"DischargeDiagnosisDescription","00380044":"DischargeDiagnosisCodeSequence","00380050":"SpecialNeeds","00380060":"ServiceEpisodeID","00380061":"IssuerOfServiceEpisodeID","00380062":"ServiceEpisodeDescription","00380064":"IssuerOfServiceEpisodeIDSequence","00380100":"PertinentDocumentsSequence","00380101":"PertinentResourcesSequence","00380102":"ResourceDescription","00380300":"CurrentPatientLocation","00380400":"PatientInstitutionResidence","00380500":"PatientState","00380502":"PatientClinicalTrialParticipationSequence","00384000":"VisitComments","003A0004":"WaveformOriginality","003A0005":"NumberOfWaveformChannels","003A0010":"NumberOfWaveformSamples","003A001A":"SamplingFrequency","003A0020":"MultiplexGroupLabel","003A0200":"ChannelDefinitionSequence","003A0202":"WaveformChannelNumber","003A0203":"ChannelLabel","003A0205":"ChannelStatus","003A0208":"ChannelSourceSequence","003A0209":"ChannelSourceModifiersSequence","003A020A":"SourceWaveformSequence","003A020C":"ChannelDerivationDescription","003A0210":"ChannelSensitivity","003A0211":"ChannelSensitivityUnitsSequence","003A0212":"ChannelSensitivityCorrectionFactor","003A0213":"ChannelBaseline","003A0214":"ChannelTimeSkew","003A0215":"ChannelSampleSkew","003A0218":"ChannelOffset","003A021A":"WaveformBitsStored","003A0220":"FilterLowFrequency","003A0221":"FilterHighFrequency","003A0222":"NotchFilterFrequency","003A0223":"NotchFilterBandwidth","003A0230":"WaveformDataDisplayScale","003A0231":"WaveformDisplayBackgroundCIELabValue","003A0240":"WaveformPresentationGroupSequence","003A0241":"PresentationGroupNumber","003A0242":"ChannelDisplaySequence","003A0244":"ChannelRecommendedDisplayCIELabValue","003A0245":"ChannelPosition","003A0246":"DisplayShadingFlag","003A0247":"FractionalChannelDisplayScale","003A0248":"AbsoluteChannelDisplayScale","003A0300":"MultiplexedAudioChannelsDescriptionCodeSequence","003A0301":"ChannelIdentificationCode","003A0302":"ChannelMode","00400001":"ScheduledStationAETitle","00400002":"ScheduledProcedureStepStartDate","00400003":"ScheduledProcedureStepStartTime","00400004":"ScheduledProcedureStepEndDate","00400005":"ScheduledProcedureStepEndTime","00400006":"ScheduledPerformingPhysicianName","00400007":"ScheduledProcedureStepDescription","00400008":"ScheduledProtocolCodeSequence","00400009":"ScheduledProcedureStepID","0040000A":"StageCodeSequence","0040000B":"ScheduledPerformingPhysicianIdentificationSequence","00400010":"ScheduledStationName","00400011":"ScheduledProcedureStepLocation","00400012":"PreMedication","00400020":"ScheduledProcedureStepStatus","00400026":"OrderPlacerIdentifierSequence","00400027":"OrderFillerIdentifierSequence","00400031":"LocalNamespaceEntityID","00400032":"UniversalEntityID","00400033":"UniversalEntityIDType","00400035":"IdentifierTypeCode","00400036":"AssigningFacilitySequence","00400039":"AssigningJurisdictionCodeSequence","0040003A":"AssigningAgencyOrDepartmentCodeSequence","00400100":"ScheduledProcedureStepSequence","00400220":"ReferencedNonImageCompositeSOPInstanceSequence","00400241":"PerformedStationAETitle","00400242":"PerformedStationName","00400243":"PerformedLocation","00400244":"PerformedProcedureStepStartDate","00400245":"PerformedProcedureStepStartTime","00400250":"PerformedProcedureStepEndDate","00400251":"PerformedProcedureStepEndTime","00400252":"PerformedProcedureStepStatus","00400253":"PerformedProcedureStepID","00400254":"PerformedProcedureStepDescription","00400255":"PerformedProcedureTypeDescription","00400260":"PerformedProtocolCodeSequence","00400261":"PerformedProtocolType","00400270":"ScheduledStepAttributesSequence","00400275":"RequestAttributesSequence","00400280":"CommentsOnThePerformedProcedureStep","00400281":"PerformedProcedureStepDiscontinuationReasonCodeSequence","00400293":"QuantitySequence","00400294":"Quantity","00400295":"MeasuringUnitsSequence","00400296":"BillingItemSequence","00400300":"TotalTimeOfFluoroscopy","00400301":"TotalNumberOfExposures","00400302":"EntranceDose","00400303":"ExposedArea","00400306":"DistanceSourceToEntrance","00400307":"DistanceSourceToSupport","0040030E":"ExposureDoseSequence","00400310":"CommentsOnRadiationDose","00400312":"XRayOutput","00400314":"HalfValueLayer","00400316":"OrganDose","00400318":"OrganExposed","00400320":"BillingProcedureStepSequence","00400321":"FilmConsumptionSequence","00400324":"BillingSuppliesAndDevicesSequence","00400330":"ReferencedProcedureStepSequence","00400340":"PerformedSeriesSequence","00400400":"CommentsOnTheScheduledProcedureStep","00400440":"ProtocolContextSequence","00400441":"ContentItemModifierSequence","00400500":"ScheduledSpecimenSequence","0040050A":"SpecimenAccessionNumber","00400512":"ContainerIdentifier","00400513":"IssuerOfTheContainerIdentifierSequence","00400515":"AlternateContainerIdentifierSequence","00400518":"ContainerTypeCodeSequence","0040051A":"ContainerDescription","00400520":"ContainerComponentSequence","00400550":"SpecimenSequence","00400551":"SpecimenIdentifier","00400552":"SpecimenDescriptionSequenceTrial","00400553":"SpecimenDescriptionTrial","00400554":"SpecimenUID","00400555":"AcquisitionContextSequence","00400556":"AcquisitionContextDescription","00400560":"SpecimenDescriptionSequence","00400562":"IssuerOfTheSpecimenIdentifierSequence","0040059A":"SpecimenTypeCodeSequence","00400600":"SpecimenShortDescription","00400602":"SpecimenDetailedDescription","00400610":"SpecimenPreparationSequence","00400612":"SpecimenPreparationStepContentItemSequence","00400620":"SpecimenLocalizationContentItemSequence","004006FA":"SlideIdentifier","00400710":"WholeSlideMicroscopyImageFrameTypeSequence","0040071A":"ImageCenterPointCoordinatesSequence","0040072A":"XOffsetInSlideCoordinateSystem","0040073A":"YOffsetInSlideCoordinateSystem","0040074A":"ZOffsetInSlideCoordinateSystem","004008D8":"PixelSpacingSequence","004008DA":"CoordinateSystemAxisCodeSequence","004008EA":"MeasurementUnitsCodeSequence","004009F8":"VitalStainCodeSequenceTrial","00401001":"RequestedProcedureID","00401002":"ReasonForTheRequestedProcedure","00401003":"RequestedProcedurePriority","00401004":"PatientTransportArrangements","00401005":"RequestedProcedureLocation","00401006":"PlacerOrderNumberProcedure","00401007":"FillerOrderNumberProcedure","00401008":"ConfidentialityCode","00401009":"ReportingPriority","0040100A":"ReasonForRequestedProcedureCodeSequence","00401010":"NamesOfIntendedRecipientsOfResults","00401011":"IntendedRecipientsOfResultsIdentificationSequence","00401012":"ReasonForPerformedProcedureCodeSequence","00401060":"RequestedProcedureDescriptionTrial","00401101":"PersonIdentificationCodeSequence","00401102":"PersonAddress","00401103":"PersonTelephoneNumbers","00401104":"PersonTelecomInformation","00401400":"RequestedProcedureComments","00402001":"ReasonForTheImagingServiceRequest","00402004":"IssueDateOfImagingServiceRequest","00402005":"IssueTimeOfImagingServiceRequest","00402006":"PlacerOrderNumberImagingServiceRequestRetired","00402007":"FillerOrderNumberImagingServiceRequestRetired","00402008":"OrderEnteredBy","00402009":"OrderEntererLocation","00402010":"OrderCallbackPhoneNumber","00402011":"OrderCallbackTelecomInformation","00402016":"PlacerOrderNumberImagingServiceRequest","00402017":"FillerOrderNumberImagingServiceRequest","00402400":"ImagingServiceRequestComments","00403001":"ConfidentialityConstraintOnPatientDataDescription","00404001":"GeneralPurposeScheduledProcedureStepStatus","00404002":"GeneralPurposePerformedProcedureStepStatus","00404003":"GeneralPurposeScheduledProcedureStepPriority","00404004":"ScheduledProcessingApplicationsCodeSequence","00404005":"ScheduledProcedureStepStartDateTime","00404006":"MultipleCopiesFlag","00404007":"PerformedProcessingApplicationsCodeSequence","00404008":"ScheduledProcedureStepExpirationDateTime","00404009":"HumanPerformerCodeSequence","00404010":"ScheduledProcedureStepModificationDateTime","00404011":"ExpectedCompletionDateTime","00404015":"ResultingGeneralPurposePerformedProcedureStepsSequence","00404016":"ReferencedGeneralPurposeScheduledProcedureStepSequence","00404018":"ScheduledWorkitemCodeSequence","00404019":"PerformedWorkitemCodeSequence","00404020":"InputAvailabilityFlag","00404021":"InputInformationSequence","00404022":"RelevantInformationSequence","00404023":"ReferencedGeneralPurposeScheduledProcedureStepTransactionUID","00404025":"ScheduledStationNameCodeSequence","00404026":"ScheduledStationClassCodeSequence","00404027":"ScheduledStationGeographicLocationCodeSequence","00404028":"PerformedStationNameCodeSequence","00404029":"PerformedStationClassCodeSequence","00404030":"PerformedStationGeographicLocationCodeSequence","00404031":"RequestedSubsequentWorkitemCodeSequence","00404032":"NonDICOMOutputCodeSequence","00404033":"OutputInformationSequence","00404034":"ScheduledHumanPerformersSequence","00404035":"ActualHumanPerformersSequence","00404036":"HumanPerformerOrganization","00404037":"HumanPerformerName","00404040":"RawDataHandling","00404041":"InputReadinessState","00404050":"PerformedProcedureStepStartDateTime","00404051":"PerformedProcedureStepEndDateTime","00404052":"ProcedureStepCancellationDateTime","00404070":"OutputDestinationSequence","00404071":"DICOMStorageSequence","00404072":"STOWRSStorageSequence","00404073":"StorageURL","00404074":"XDSStorageSequence","00408302":"EntranceDoseInmGy","00408303":"EntranceDoseDerivation","00409092":"ParametricMapFrameTypeSequence","00409094":"ReferencedImageRealWorldValueMappingSequence","00409096":"RealWorldValueMappingSequence","00409098":"PixelValueMappingCodeSequence","00409210":"LUTLabel","00409211":"RealWorldValueLastValueMapped","00409212":"RealWorldValueLUTData","00409213":"DoubleFloatRealWorldValueLastValueMapped","00409214":"DoubleFloatRealWorldValueFirstValueMapped","00409216":"RealWorldValueFirstValueMapped","00409220":"QuantityDefinitionSequence","00409224":"RealWorldValueIntercept","00409225":"RealWorldValueSlope","0040A007":"FindingsFlagTrial","0040A010":"RelationshipType","0040A020":"FindingsSequenceTrial","0040A021":"FindingsGroupUIDTrial","0040A022":"ReferencedFindingsGroupUIDTrial","0040A023":"FindingsGroupRecordingDateTrial","0040A024":"FindingsGroupRecordingTimeTrial","0040A026":"FindingsSourceCategoryCodeSequenceTrial","0040A027":"VerifyingOrganization","0040A028":"DocumentingOrganizationIdentifierCodeSequenceTrial","0040A030":"VerificationDateTime","0040A032":"ObservationDateTime","0040A040":"ValueType","0040A043":"ConceptNameCodeSequence","0040A047":"MeasurementPrecisionDescriptionTrial","0040A050":"ContinuityOfContent","0040A057":"UrgencyOrPriorityAlertsTrial","0040A060":"SequencingIndicatorTrial","0040A066":"DocumentIdentifierCodeSequenceTrial","0040A067":"DocumentAuthorTrial","0040A068":"DocumentAuthorIdentifierCodeSequenceTrial","0040A070":"IdentifierCodeSequenceTrial","0040A073":"VerifyingObserverSequence","0040A074":"ObjectBinaryIdentifierTrial","0040A075":"VerifyingObserverName","0040A076":"DocumentingObserverIdentifierCodeSequenceTrial","0040A078":"AuthorObserverSequence","0040A07A":"ParticipantSequence","0040A07C":"CustodialOrganizationSequence","0040A080":"ParticipationType","0040A082":"ParticipationDateTime","0040A084":"ObserverType","0040A085":"ProcedureIdentifierCodeSequenceTrial","0040A088":"VerifyingObserverIdentificationCodeSequence","0040A089":"ObjectDirectoryBinaryIdentifierTrial","0040A090":"EquivalentCDADocumentSequence","0040A0B0":"ReferencedWaveformChannels","0040A110":"DateOfDocumentOrVerbalTransactionTrial","0040A112":"TimeOfDocumentCreationOrVerbalTransactionTrial","0040A120":"DateTime","0040A121":"Date","0040A122":"Time","0040A123":"PersonName","0040A124":"UID","0040A125":"ReportStatusIDTrial","0040A130":"TemporalRangeType","0040A132":"ReferencedSamplePositions","0040A136":"ReferencedFrameNumbers","0040A138":"ReferencedTimeOffsets","0040A13A":"ReferencedDateTime","0040A160":"TextValue","0040A161":"FloatingPointValue","0040A162":"RationalNumeratorValue","0040A163":"RationalDenominatorValue","0040A167":"ObservationCategoryCodeSequenceTrial","0040A168":"ConceptCodeSequence","0040A16A":"BibliographicCitationTrial","0040A170":"PurposeOfReferenceCodeSequence","0040A171":"ObservationUID","0040A172":"ReferencedObservationUIDTrial","0040A173":"ReferencedObservationClassTrial","0040A174":"ReferencedObjectObservationClassTrial","0040A180":"AnnotationGroupNumber","0040A192":"ObservationDateTrial","0040A193":"ObservationTimeTrial","0040A194":"MeasurementAutomationTrial","0040A195":"ModifierCodeSequence","0040A224":"IdentificationDescriptionTrial","0040A290":"CoordinatesSetGeometricTypeTrial","0040A296":"AlgorithmCodeSequenceTrial","0040A297":"AlgorithmDescriptionTrial","0040A29A":"PixelCoordinatesSetTrial","0040A300":"MeasuredValueSequence","0040A301":"NumericValueQualifierCodeSequence","0040A307":"CurrentObserverTrial","0040A30A":"NumericValue","0040A313":"ReferencedAccessionSequenceTrial","0040A33A":"ReportStatusCommentTrial","0040A340":"ProcedureContextSequenceTrial","0040A352":"VerbalSourceTrial","0040A353":"AddressTrial","0040A354":"TelephoneNumberTrial","0040A358":"VerbalSourceIdentifierCodeSequenceTrial","0040A360":"PredecessorDocumentsSequence","0040A370":"ReferencedRequestSequence","0040A372":"PerformedProcedureCodeSequence","0040A375":"CurrentRequestedProcedureEvidenceSequence","0040A380":"ReportDetailSequenceTrial","0040A385":"PertinentOtherEvidenceSequence","0040A390":"HL7StructuredDocumentReferenceSequence","0040A402":"ObservationSubjectUIDTrial","0040A403":"ObservationSubjectClassTrial","0040A404":"ObservationSubjectTypeCodeSequenceTrial","0040A491":"CompletionFlag","0040A492":"CompletionFlagDescription","0040A493":"VerificationFlag","0040A494":"ArchiveRequested","0040A496":"PreliminaryFlag","0040A504":"ContentTemplateSequence","0040A525":"IdenticalDocumentsSequence","0040A600":"ObservationSubjectContextFlagTrial","0040A601":"ObserverContextFlagTrial","0040A603":"ProcedureContextFlagTrial","0040A730":"ContentSequence","0040A731":"RelationshipSequenceTrial","0040A732":"RelationshipTypeCodeSequenceTrial","0040A744":"LanguageCodeSequenceTrial","0040A992":"UniformResourceLocatorTrial","0040B020":"WaveformAnnotationSequence","0040DB00":"TemplateIdentifier","0040DB06":"TemplateVersion","0040DB07":"TemplateLocalVersion","0040DB0B":"TemplateExtensionFlag","0040DB0C":"TemplateExtensionOrganizationUID","0040DB0D":"TemplateExtensionCreatorUID","0040DB73":"ReferencedContentItemIdentifier","0040E001":"HL7InstanceIdentifier","0040E004":"HL7DocumentEffectiveTime","0040E006":"HL7DocumentTypeCodeSequence","0040E008":"DocumentClassCodeSequence","0040E010":"RetrieveURI","0040E011":"RetrieveLocationUID","0040E020":"TypeOfInstances","0040E021":"DICOMRetrievalSequence","0040E022":"DICOMMediaRetrievalSequence","0040E023":"WADORetrievalSequence","0040E024":"XDSRetrievalSequence","0040E025":"WADORSRetrievalSequence","0040E030":"RepositoryUniqueID","0040E031":"HomeCommunityID","00420010":"DocumentTitle","00420011":"EncapsulatedDocument","00420012":"MIMETypeOfEncapsulatedDocument","00420013":"SourceInstanceSequence","00420014":"ListOfMIMETypes","00440001":"ProductPackageIdentifier","00440002":"SubstanceAdministrationApproval","00440003":"ApprovalStatusFurtherDescription","00440004":"ApprovalStatusDateTime","00440007":"ProductTypeCodeSequence","00440008":"ProductName","00440009":"ProductDescription","0044000A":"ProductLotIdentifier","0044000B":"ProductExpirationDateTime","00440010":"SubstanceAdministrationDateTime","00440011":"SubstanceAdministrationNotes","00440012":"SubstanceAdministrationDeviceID","00440013":"ProductParameterSequence","00440019":"SubstanceAdministrationParameterSequence","00440100":"ApprovalSequence","00440101":"AssertionCodeSequence","00440102":"AssertionUID","00440103":"AsserterIdentificationSequence","00440104":"AssertionDateTime","00440105":"AssertionExpirationDateTime","00440106":"AssertionComments","00440107":"RelatedAssertionSequence","00440108":"ReferencedAssertionUID","00440109":"ApprovalSubjectSequence","0044010A":"OrganizationalRoleCodeSequence","00460012":"LensDescription","00460014":"RightLensSequence","00460015":"LeftLensSequence","00460016":"UnspecifiedLateralityLensSequence","00460018":"CylinderSequence","00460028":"PrismSequence","00460030":"HorizontalPrismPower","00460032":"HorizontalPrismBase","00460034":"VerticalPrismPower","00460036":"VerticalPrismBase","00460038":"LensSegmentType","00460040":"OpticalTransmittance","00460042":"ChannelWidth","00460044":"PupilSize","00460046":"CornealSize","00460050":"AutorefractionRightEyeSequence","00460052":"AutorefractionLeftEyeSequence","00460060":"DistancePupillaryDistance","00460062":"NearPupillaryDistance","00460063":"IntermediatePupillaryDistance","00460064":"OtherPupillaryDistance","00460070":"KeratometryRightEyeSequence","00460071":"KeratometryLeftEyeSequence","00460074":"SteepKeratometricAxisSequence","00460075":"RadiusOfCurvature","00460076":"KeratometricPower","00460077":"KeratometricAxis","00460080":"FlatKeratometricAxisSequence","00460092":"BackgroundColor","00460094":"Optotype","00460095":"OptotypePresentation","00460097":"SubjectiveRefractionRightEyeSequence","00460098":"SubjectiveRefractionLeftEyeSequence","00460100":"AddNearSequence","00460101":"AddIntermediateSequence","00460102":"AddOtherSequence","00460104":"AddPower","00460106":"ViewingDistance","00460121":"VisualAcuityTypeCodeSequence","00460122":"VisualAcuityRightEyeSequence","00460123":"VisualAcuityLeftEyeSequence","00460124":"VisualAcuityBothEyesOpenSequence","00460125":"ViewingDistanceType","00460135":"VisualAcuityModifiers","00460137":"DecimalVisualAcuity","00460139":"OptotypeDetailedDefinition","00460145":"ReferencedRefractiveMeasurementsSequence","00460146":"SpherePower","00460147":"CylinderPower","00460201":"CornealTopographySurface","00460202":"CornealVertexLocation","00460203":"PupilCentroidXCoordinate","00460204":"PupilCentroidYCoordinate","00460205":"EquivalentPupilRadius","00460207":"CornealTopographyMapTypeCodeSequence","00460208":"VerticesOfTheOutlineOfPupil","00460210":"CornealTopographyMappingNormalsSequence","00460211":"MaximumCornealCurvatureSequence","00460212":"MaximumCornealCurvature","00460213":"MaximumCornealCurvatureLocation","00460215":"MinimumKeratometricSequence","00460218":"SimulatedKeratometricCylinderSequence","00460220":"AverageCornealPower","00460224":"CornealISValue","00460227":"AnalyzedArea","00460230":"SurfaceRegularityIndex","00460232":"SurfaceAsymmetryIndex","00460234":"CornealEccentricityIndex","00460236":"KeratoconusPredictionIndex","00460238":"DecimalPotentialVisualAcuity","00460242":"CornealTopographyMapQualityEvaluation","00460244":"SourceImageCornealProcessedDataSequence","00460247":"CornealPointLocation","00460248":"CornealPointEstimated","00460249":"AxialPower","00460250":"TangentialPower","00460251":"RefractivePower","00460252":"RelativeElevation","00460253":"CornealWavefront","00480001":"ImagedVolumeWidth","00480002":"ImagedVolumeHeight","00480003":"ImagedVolumeDepth","00480006":"TotalPixelMatrixColumns","00480007":"TotalPixelMatrixRows","00480008":"TotalPixelMatrixOriginSequence","00480010":"SpecimenLabelInImage","00480011":"FocusMethod","00480012":"ExtendedDepthOfField","00480013":"NumberOfFocalPlanes","00480014":"DistanceBetweenFocalPlanes","00480015":"RecommendedAbsentPixelCIELabValue","00480100":"IlluminatorTypeCodeSequence","00480102":"ImageOrientationSlide","00480105":"OpticalPathSequence","00480106":"OpticalPathIdentifier","00480107":"OpticalPathDescription","00480108":"IlluminationColorCodeSequence","00480110":"SpecimenReferenceSequence","00480111":"CondenserLensPower","00480112":"ObjectiveLensPower","00480113":"ObjectiveLensNumericalAperture","00480120":"PaletteColorLookupTableSequence","00480200":"ReferencedImageNavigationSequence","00480201":"TopLeftHandCornerOfLocalizerArea","00480202":"BottomRightHandCornerOfLocalizerArea","00480207":"OpticalPathIdentificationSequence","0048021A":"PlanePositionSlideSequence","0048021E":"ColumnPositionInTotalImagePixelMatrix","0048021F":"RowPositionInTotalImagePixelMatrix","00480301":"PixelOriginInterpretation","00480302":"NumberOfOpticalPaths","00480303":"TotalPixelMatrixFocalPlanes","00500004":"CalibrationImage","00500010":"DeviceSequence","00500012":"ContainerComponentTypeCodeSequence","00500013":"ContainerComponentThickness","00500014":"DeviceLength","00500015":"ContainerComponentWidth","00500016":"DeviceDiameter","00500017":"DeviceDiameterUnits","00500018":"DeviceVolume","00500019":"InterMarkerDistance","0050001A":"ContainerComponentMaterial","0050001B":"ContainerComponentID","0050001C":"ContainerComponentLength","0050001D":"ContainerComponentDiameter","0050001E":"ContainerComponentDescription","00500020":"DeviceDescription","00520001":"ContrastBolusIngredientPercentByVolume","00520002":"OCTFocalDistance","00520003":"BeamSpotSize","00520004":"EffectiveRefractiveIndex","00520006":"OCTAcquisitionDomain","00520007":"OCTOpticalCenterWavelength","00520008":"AxialResolution","00520009":"RangingDepth","00520011":"ALineRate","00520012":"ALinesPerFrame","00520013":"CatheterRotationalRate","00520014":"ALinePixelSpacing","00520016":"ModeOfPercutaneousAccessSequence","00520025":"IntravascularOCTFrameTypeSequence","00520026":"OCTZOffsetApplied","00520027":"IntravascularFrameContentSequence","00520028":"IntravascularLongitudinalDistance","00520029":"IntravascularOCTFrameContentSequence","00520030":"OCTZOffsetCorrection","00520031":"CatheterDirectionOfRotation","00520033":"SeamLineLocation","00520034":"FirstALineLocation","00520036":"SeamLineIndex","00520038":"NumberOfPaddedALines","00520039":"InterpolationType","0052003A":"RefractiveIndexApplied","00540010":"EnergyWindowVector","00540011":"NumberOfEnergyWindows","00540012":"EnergyWindowInformationSequence","00540013":"EnergyWindowRangeSequence","00540014":"EnergyWindowLowerLimit","00540015":"EnergyWindowUpperLimit","00540016":"RadiopharmaceuticalInformationSequence","00540017":"ResidualSyringeCounts","00540018":"EnergyWindowName","00540020":"DetectorVector","00540021":"NumberOfDetectors","00540022":"DetectorInformationSequence","00540030":"PhaseVector","00540031":"NumberOfPhases","00540032":"PhaseInformationSequence","00540033":"NumberOfFramesInPhase","00540036":"PhaseDelay","00540038":"PauseBetweenFrames","00540039":"PhaseDescription","00540050":"RotationVector","00540051":"NumberOfRotations","00540052":"RotationInformationSequence","00540053":"NumberOfFramesInRotation","00540060":"RRIntervalVector","00540061":"NumberOfRRIntervals","00540062":"GatedInformationSequence","00540063":"DataInformationSequence","00540070":"TimeSlotVector","00540071":"NumberOfTimeSlots","00540072":"TimeSlotInformationSequence","00540073":"TimeSlotTime","00540080":"SliceVector","00540081":"NumberOfSlices","00540090":"AngularViewVector","00540100":"TimeSliceVector","00540101":"NumberOfTimeSlices","00540200":"StartAngle","00540202":"TypeOfDetectorMotion","00540210":"TriggerVector","00540211":"NumberOfTriggersInPhase","00540220":"ViewCodeSequence","00540222":"ViewModifierCodeSequence","00540300":"RadionuclideCodeSequence","00540302":"AdministrationRouteCodeSequence","00540304":"RadiopharmaceuticalCodeSequence","00540306":"CalibrationDataSequence","00540308":"EnergyWindowNumber","00540400":"ImageID","00540410":"PatientOrientationCodeSequence","00540412":"PatientOrientationModifierCodeSequence","00540414":"PatientGantryRelationshipCodeSequence","00540500":"SliceProgressionDirection","00540501":"ScanProgressionDirection","00541000":"SeriesType","00541001":"Units","00541002":"CountsSource","00541004":"ReprojectionMethod","00541006":"SUVType","00541100":"RandomsCorrectionMethod","00541101":"AttenuationCorrectionMethod","00541102":"DecayCorrection","00541103":"ReconstructionMethod","00541104":"DetectorLinesOfResponseUsed","00541105":"ScatterCorrectionMethod","00541200":"AxialAcceptance","00541201":"AxialMash","00541202":"TransverseMash","00541203":"DetectorElementSize","00541210":"CoincidenceWindowWidth","00541220":"SecondaryCountsType","00541300":"FrameReferenceTime","00541310":"PrimaryPromptsCountsAccumulated","00541311":"SecondaryCountsAccumulated","00541320":"SliceSensitivityFactor","00541321":"DecayFactor","00541322":"DoseCalibrationFactor","00541323":"ScatterFractionFactor","00541324":"DeadTimeFactor","00541330":"ImageIndex","00541400":"CountsIncluded","00541401":"DeadTimeCorrectionFlag","00603000":"HistogramSequence","00603002":"HistogramNumberOfBins","00603004":"HistogramFirstBinValue","00603006":"HistogramLastBinValue","00603008":"HistogramBinWidth","00603010":"HistogramExplanation","00603020":"HistogramData","00620001":"SegmentationType","00620002":"SegmentSequence","00620003":"SegmentedPropertyCategoryCodeSequence","00620004":"SegmentNumber","00620005":"SegmentLabel","00620006":"SegmentDescription","00620007":"SegmentationAlgorithmIdentificationSequence","00620008":"SegmentAlgorithmType","00620009":"SegmentAlgorithmName","0062000A":"SegmentIdentificationSequence","0062000B":"ReferencedSegmentNumber","0062000C":"RecommendedDisplayGrayscaleValue","0062000D":"RecommendedDisplayCIELabValue","0062000E":"MaximumFractionalValue","0062000F":"SegmentedPropertyTypeCodeSequence","00620010":"SegmentationFractionalType","00620011":"SegmentedPropertyTypeModifierCodeSequence","00620012":"UsedSegmentsSequence","00620020":"TrackingID","00620021":"TrackingUID","00640002":"DeformableRegistrationSequence","00640003":"SourceFrameOfReferenceUID","00640005":"DeformableRegistrationGridSequence","00640007":"GridDimensions","00640008":"GridResolution","00640009":"VectorGridData","0064000F":"PreDeformationMatrixRegistrationSequence","00640010":"PostDeformationMatrixRegistrationSequence","00660001":"NumberOfSurfaces","00660002":"SurfaceSequence","00660003":"SurfaceNumber","00660004":"SurfaceComments","00660009":"SurfaceProcessing","0066000A":"SurfaceProcessingRatio","0066000B":"SurfaceProcessingDescription","0066000C":"RecommendedPresentationOpacity","0066000D":"RecommendedPresentationType","0066000E":"FiniteVolume","00660010":"Manifold","00660011":"SurfacePointsSequence","00660012":"SurfacePointsNormalsSequence","00660013":"SurfaceMeshPrimitivesSequence","00660015":"NumberOfSurfacePoints","00660016":"PointCoordinatesData","00660017":"PointPositionAccuracy","00660018":"MeanPointDistance","00660019":"MaximumPointDistance","0066001A":"PointsBoundingBoxCoordinates","0066001B":"AxisOfRotation","0066001C":"CenterOfRotation","0066001E":"NumberOfVectors","0066001F":"VectorDimensionality","00660020":"VectorAccuracy","00660021":"VectorCoordinateData","00660023":"TrianglePointIndexList","00660024":"EdgePointIndexList","00660025":"VertexPointIndexList","00660026":"TriangleStripSequence","00660027":"TriangleFanSequence","00660028":"LineSequence","00660029":"PrimitivePointIndexList","0066002A":"SurfaceCount","0066002B":"ReferencedSurfaceSequence","0066002C":"ReferencedSurfaceNumber","0066002D":"SegmentSurfaceGenerationAlgorithmIdentificationSequence","0066002E":"SegmentSurfaceSourceInstanceSequence","0066002F":"AlgorithmFamilyCodeSequence","00660030":"AlgorithmNameCodeSequence","00660031":"AlgorithmVersion","00660032":"AlgorithmParameters","00660034":"FacetSequence","00660035":"SurfaceProcessingAlgorithmIdentificationSequence","00660036":"AlgorithmName","00660037":"RecommendedPointRadius","00660038":"RecommendedLineThickness","00660040":"LongPrimitivePointIndexList","00660041":"LongTrianglePointIndexList","00660042":"LongEdgePointIndexList","00660043":"LongVertexPointIndexList","00660101":"TrackSetSequence","00660102":"TrackSequence","00660103":"RecommendedDisplayCIELabValueList","00660104":"TrackingAlgorithmIdentificationSequence","00660105":"TrackSetNumber","00660106":"TrackSetLabel","00660107":"TrackSetDescription","00660108":"TrackSetAnatomicalTypeCodeSequence","00660121":"MeasurementsSequence","00660124":"TrackSetStatisticsSequence","00660125":"FloatingPointValues","00660129":"TrackPointIndexList","00660130":"TrackStatisticsSequence","00660132":"MeasurementValuesSequence","00660133":"DiffusionAcquisitionCodeSequence","00660134":"DiffusionModelCodeSequence","00686210":"ImplantSize","00686221":"ImplantTemplateVersion","00686222":"ReplacedImplantTemplateSequence","00686223":"ImplantType","00686224":"DerivationImplantTemplateSequence","00686225":"OriginalImplantTemplateSequence","00686226":"EffectiveDateTime","00686230":"ImplantTargetAnatomySequence","00686260":"InformationFromManufacturerSequence","00686265":"NotificationFromManufacturerSequence","00686270":"InformationIssueDateTime","00686280":"InformationSummary","006862A0":"ImplantRegulatoryDisapprovalCodeSequence","006862A5":"OverallTemplateSpatialTolerance","006862C0":"HPGLDocumentSequence","006862D0":"HPGLDocumentID","006862D5":"HPGLDocumentLabel","006862E0":"ViewOrientationCodeSequence","006862F0":"ViewOrientationModifierCodeSequence","006862F2":"HPGLDocumentScaling","00686300":"HPGLDocument","00686310":"HPGLContourPenNumber","00686320":"HPGLPenSequence","00686330":"HPGLPenNumber","00686340":"HPGLPenLabel","00686345":"HPGLPenDescription","00686346":"RecommendedRotationPoint","00686347":"BoundingRectangle","00686350":"ImplantTemplate3DModelSurfaceNumber","00686360":"SurfaceModelDescriptionSequence","00686380":"SurfaceModelLabel","00686390":"SurfaceModelScalingFactor","006863A0":"MaterialsCodeSequence","006863A4":"CoatingMaterialsCodeSequence","006863A8":"ImplantTypeCodeSequence","006863AC":"FixationMethodCodeSequence","006863B0":"MatingFeatureSetsSequence","006863C0":"MatingFeatureSetID","006863D0":"MatingFeatureSetLabel","006863E0":"MatingFeatureSequence","006863F0":"MatingFeatureID","00686400":"MatingFeatureDegreeOfFreedomSequence","00686410":"DegreeOfFreedomID","00686420":"DegreeOfFreedomType","00686430":"TwoDMatingFeatureCoordinatesSequence","00686440":"ReferencedHPGLDocumentID","00686450":"TwoDMatingPoint","00686460":"TwoDMatingAxes","00686470":"TwoDDegreeOfFreedomSequence","00686490":"ThreeDDegreeOfFreedomAxis","006864A0":"RangeOfFreedom","006864C0":"ThreeDMatingPoint","006864D0":"ThreeDMatingAxes","006864F0":"TwoDDegreeOfFreedomAxis","00686500":"PlanningLandmarkPointSequence","00686510":"PlanningLandmarkLineSequence","00686520":"PlanningLandmarkPlaneSequence","00686530":"PlanningLandmarkID","00686540":"PlanningLandmarkDescription","00686545":"PlanningLandmarkIdentificationCodeSequence","00686550":"TwoDPointCoordinatesSequence","00686560":"TwoDPointCoordinates","00686590":"ThreeDPointCoordinates","006865A0":"TwoDLineCoordinatesSequence","006865B0":"TwoDLineCoordinates","006865D0":"ThreeDLineCoordinates","006865E0":"TwoDPlaneCoordinatesSequence","006865F0":"TwoDPlaneIntersection","00686610":"ThreeDPlaneOrigin","00686620":"ThreeDPlaneNormal","00687001":"ModelModification","00687002":"ModelMirroring","00687003":"ModelUsageCodeSequence","00700001":"GraphicAnnotationSequence","00700002":"GraphicLayer","00700003":"BoundingBoxAnnotationUnits","00700004":"AnchorPointAnnotationUnits","00700005":"GraphicAnnotationUnits","00700006":"UnformattedTextValue","00700008":"TextObjectSequence","00700009":"GraphicObjectSequence","00700010":"BoundingBoxTopLeftHandCorner","00700011":"BoundingBoxBottomRightHandCorner","00700012":"BoundingBoxTextHorizontalJustification","00700014":"AnchorPoint","00700015":"AnchorPointVisibility","00700020":"GraphicDimensions","00700021":"NumberOfGraphicPoints","00700022":"GraphicData","00700023":"GraphicType","00700024":"GraphicFilled","00700040":"ImageRotationRetired","00700041":"ImageHorizontalFlip","00700042":"ImageRotation","00700050":"DisplayedAreaTopLeftHandCornerTrial","00700051":"DisplayedAreaBottomRightHandCornerTrial","00700052":"DisplayedAreaTopLeftHandCorner","00700053":"DisplayedAreaBottomRightHandCorner","0070005A":"DisplayedAreaSelectionSequence","00700060":"GraphicLayerSequence","00700062":"GraphicLayerOrder","00700066":"GraphicLayerRecommendedDisplayGrayscaleValue","00700067":"GraphicLayerRecommendedDisplayRGBValue","00700068":"GraphicLayerDescription","00700080":"ContentLabel","00700081":"ContentDescription","00700082":"PresentationCreationDate","00700083":"PresentationCreationTime","00700084":"ContentCreatorName","00700086":"ContentCreatorIdentificationCodeSequence","00700087":"AlternateContentDescriptionSequence","00700100":"PresentationSizeMode","00700101":"PresentationPixelSpacing","00700102":"PresentationPixelAspectRatio","00700103":"PresentationPixelMagnificationRatio","00700207":"GraphicGroupLabel","00700208":"GraphicGroupDescription","00700209":"CompoundGraphicSequence","00700226":"CompoundGraphicInstanceID","00700227":"FontName","00700228":"FontNameType","00700229":"CSSFontName","00700230":"RotationAngle","00700231":"TextStyleSequence","00700232":"LineStyleSequence","00700233":"FillStyleSequence","00700234":"GraphicGroupSequence","00700241":"TextColorCIELabValue","00700242":"HorizontalAlignment","00700243":"VerticalAlignment","00700244":"ShadowStyle","00700245":"ShadowOffsetX","00700246":"ShadowOffsetY","00700247":"ShadowColorCIELabValue","00700248":"Underlined","00700249":"Bold","00700250":"Italic","00700251":"PatternOnColorCIELabValue","00700252":"PatternOffColorCIELabValue","00700253":"LineThickness","00700254":"LineDashingStyle","00700255":"LinePattern","00700256":"FillPattern","00700257":"FillMode","00700258":"ShadowOpacity","00700261":"GapLength","00700262":"DiameterOfVisibility","00700273":"RotationPoint","00700274":"TickAlignment","00700278":"ShowTickLabel","00700279":"TickLabelAlignment","00700282":"CompoundGraphicUnits","00700284":"PatternOnOpacity","00700285":"PatternOffOpacity","00700287":"MajorTicksSequence","00700288":"TickPosition","00700289":"TickLabel","00700294":"CompoundGraphicType","00700295":"GraphicGroupID","00700306":"ShapeType","00700308":"RegistrationSequence","00700309":"MatrixRegistrationSequence","0070030A":"MatrixSequence","0070030B":"FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix","0070030C":"FrameOfReferenceTransformationMatrixType","0070030D":"RegistrationTypeCodeSequence","0070030F":"FiducialDescription","00700310":"FiducialIdentifier","00700311":"FiducialIdentifierCodeSequence","00700312":"ContourUncertaintyRadius","00700314":"UsedFiducialsSequence","00700318":"GraphicCoordinatesDataSequence","0070031A":"FiducialUID","0070031B":"ReferencedFiducialUID","0070031C":"FiducialSetSequence","0070031E":"FiducialSequence","0070031F":"FiducialsPropertyCategoryCodeSequence","00700401":"GraphicLayerRecommendedDisplayCIELabValue","00700402":"BlendingSequence","00700403":"RelativeOpacity","00700404":"ReferencedSpatialRegistrationSequence","00700405":"BlendingPosition","00701101":"PresentationDisplayCollectionUID","00701102":"PresentationSequenceCollectionUID","00701103":"PresentationSequencePositionIndex","00701104":"RenderedImageReferenceSequence","00701201":"VolumetricPresentationStateInputSequence","00701202":"PresentationInputType","00701203":"InputSequencePositionIndex","00701204":"Crop","00701205":"CroppingSpecificationIndex","00701206":"CompositingMethod","00701207":"VolumetricPresentationInputNumber","00701208":"ImageVolumeGeometry","00701209":"VolumetricPresentationInputSetUID","0070120A":"VolumetricPresentationInputSetSequence","0070120B":"GlobalCrop","0070120C":"GlobalCroppingSpecificationIndex","0070120D":"RenderingMethod","00701301":"VolumeCroppingSequence","00701302":"VolumeCroppingMethod","00701303":"BoundingBoxCrop","00701304":"ObliqueCroppingPlaneSequence","00701305":"Plane","00701306":"PlaneNormal","00701309":"CroppingSpecificationNumber","00701501":"MultiPlanarReconstructionStyle","00701502":"MPRThicknessType","00701503":"MPRSlabThickness","00701505":"MPRTopLeftHandCorner","00701507":"MPRViewWidthDirection","00701508":"MPRViewWidth","0070150C":"NumberOfVolumetricCurvePoints","0070150D":"VolumetricCurvePoints","00701511":"MPRViewHeightDirection","00701512":"MPRViewHeight","00701602":"RenderProjection","00701603":"ViewpointPosition","00701604":"ViewpointLookAtPoint","00701605":"ViewpointUpDirection","00701606":"RenderFieldOfView","00701607":"SamplingStepSize","00701701":"ShadingStyle","00701702":"AmbientReflectionIntensity","00701703":"LightDirection","00701704":"DiffuseReflectionIntensity","00701705":"SpecularReflectionIntensity","00701706":"Shininess","00701801":"PresentationStateClassificationComponentSequence","00701802":"ComponentType","00701803":"ComponentInputSequence","00701804":"VolumetricPresentationInputIndex","00701805":"PresentationStateCompositorComponentSequence","00701806":"WeightingTransferFunctionSequence","00701807":"WeightingLookupTableDescriptor","00701808":"WeightingLookupTableData","00701901":"VolumetricAnnotationSequence","00701903":"ReferencedStructuredContextSequence","00701904":"ReferencedContentItem","00701905":"VolumetricPresentationInputAnnotationSequence","00701907":"AnnotationClipping","00701A01":"PresentationAnimationStyle","00701A03":"RecommendedAnimationRate","00701A04":"AnimationCurveSequence","00701A05":"AnimationStepSize","00701A06":"SwivelRange","00701A07":"VolumetricCurveUpDirections","00701A08":"VolumeStreamSequence","00701A09":"RGBATransferFunctionDescription","00701B01":"AdvancedBlendingSequence","00701B02":"BlendingInputNumber","00701B03":"BlendingDisplayInputSequence","00701B04":"BlendingDisplaySequence","00701B06":"BlendingMode","00701B07":"TimeSeriesBlending","00701B08":"GeometryForDisplay","00701B11":"ThresholdSequence","00701B12":"ThresholdValueSequence","00701B13":"ThresholdType","00701B14":"ThresholdValue","00720002":"HangingProtocolName","00720004":"HangingProtocolDescription","00720006":"HangingProtocolLevel","00720008":"HangingProtocolCreator","0072000A":"HangingProtocolCreationDateTime","0072000C":"HangingProtocolDefinitionSequence","0072000E":"HangingProtocolUserIdentificationCodeSequence","00720010":"HangingProtocolUserGroupName","00720012":"SourceHangingProtocolSequence","00720014":"NumberOfPriorsReferenced","00720020":"ImageSetsSequence","00720022":"ImageSetSelectorSequence","00720024":"ImageSetSelectorUsageFlag","00720026":"SelectorAttribute","00720028":"SelectorValueNumber","00720030":"TimeBasedImageSetsSequence","00720032":"ImageSetNumber","00720034":"ImageSetSelectorCategory","00720038":"RelativeTime","0072003A":"RelativeTimeUnits","0072003C":"AbstractPriorValue","0072003E":"AbstractPriorCodeSequence","00720040":"ImageSetLabel","00720050":"SelectorAttributeVR","00720052":"SelectorSequencePointer","00720054":"SelectorSequencePointerPrivateCreator","00720056":"SelectorAttributePrivateCreator","0072005E":"SelectorAEValue","0072005F":"SelectorASValue","00720060":"SelectorATValue","00720061":"SelectorDAValue","00720062":"SelectorCSValue","00720063":"SelectorDTValue","00720064":"SelectorISValue","00720065":"SelectorOBValue","00720066":"SelectorLOValue","00720067":"SelectorOFValue","00720068":"SelectorLTValue","00720069":"SelectorOWValue","0072006A":"SelectorPNValue","0072006B":"SelectorTMValue","0072006C":"SelectorSHValue","0072006D":"SelectorUNValue","0072006E":"SelectorSTValue","0072006F":"SelectorUCValue","00720070":"SelectorUTValue","00720071":"SelectorURValue","00720072":"SelectorDSValue","00720073":"SelectorODValue","00720074":"SelectorFDValue","00720075":"SelectorOLValue","00720076":"SelectorFLValue","00720078":"SelectorULValue","0072007A":"SelectorUSValue","0072007C":"SelectorSLValue","0072007E":"SelectorSSValue","0072007F":"SelectorUIValue","00720080":"SelectorCodeSequenceValue","00720100":"NumberOfScreens","00720102":"NominalScreenDefinitionSequence","00720104":"NumberOfVerticalPixels","00720106":"NumberOfHorizontalPixels","00720108":"DisplayEnvironmentSpatialPosition","0072010A":"ScreenMinimumGrayscaleBitDepth","0072010C":"ScreenMinimumColorBitDepth","0072010E":"ApplicationMaximumRepaintTime","00720200":"DisplaySetsSequence","00720202":"DisplaySetNumber","00720203":"DisplaySetLabel","00720204":"DisplaySetPresentationGroup","00720206":"DisplaySetPresentationGroupDescription","00720208":"PartialDataDisplayHandling","00720210":"SynchronizedScrollingSequence","00720212":"DisplaySetScrollingGroup","00720214":"NavigationIndicatorSequence","00720216":"NavigationDisplaySet","00720218":"ReferenceDisplaySets","00720300":"ImageBoxesSequence","00720302":"ImageBoxNumber","00720304":"ImageBoxLayoutType","00720306":"ImageBoxTileHorizontalDimension","00720308":"ImageBoxTileVerticalDimension","00720310":"ImageBoxScrollDirection","00720312":"ImageBoxSmallScrollType","00720314":"ImageBoxSmallScrollAmount","00720316":"ImageBoxLargeScrollType","00720318":"ImageBoxLargeScrollAmount","00720320":"ImageBoxOverlapPriority","00720330":"CineRelativeToRealTime","00720400":"FilterOperationsSequence","00720402":"FilterByCategory","00720404":"FilterByAttributePresence","00720406":"FilterByOperator","00720420":"StructuredDisplayBackgroundCIELabValue","00720421":"EmptyImageBoxCIELabValue","00720422":"StructuredDisplayImageBoxSequence","00720424":"StructuredDisplayTextBoxSequence","00720427":"ReferencedFirstFrameSequence","00720430":"ImageBoxSynchronizationSequence","00720432":"SynchronizedImageBoxList","00720434":"TypeOfSynchronization","00720500":"BlendingOperationType","00720510":"ReformattingOperationType","00720512":"ReformattingThickness","00720514":"ReformattingInterval","00720516":"ReformattingOperationInitialViewDirection","00720520":"ThreeDRenderingType","00720600":"SortingOperationsSequence","00720602":"SortByCategory","00720604":"SortingDirection","00720700":"DisplaySetPatientOrientation","00720702":"VOIType","00720704":"PseudoColorType","00720705":"PseudoColorPaletteInstanceReferenceSequence","00720706":"ShowGrayscaleInverted","00720710":"ShowImageTrueSizeFlag","00720712":"ShowGraphicAnnotationFlag","00720714":"ShowPatientDemographicsFlag","00720716":"ShowAcquisitionTechniquesFlag","00720717":"DisplaySetHorizontalJustification","00720718":"DisplaySetVerticalJustification","00740120":"ContinuationStartMeterset","00740121":"ContinuationEndMeterset","00741000":"ProcedureStepState","00741002":"ProcedureStepProgressInformationSequence","00741004":"ProcedureStepProgress","00741006":"ProcedureStepProgressDescription","00741007":"ProcedureStepProgressParametersSequence","00741008":"ProcedureStepCommunicationsURISequence","0074100A":"ContactURI","0074100C":"ContactDisplayName","0074100E":"ProcedureStepDiscontinuationReasonCodeSequence","00741020":"BeamTaskSequence","00741022":"BeamTaskType","00741024":"BeamOrderIndexTrial","00741025":"AutosequenceFlag","00741026":"TableTopVerticalAdjustedPosition","00741027":"TableTopLongitudinalAdjustedPosition","00741028":"TableTopLateralAdjustedPosition","0074102A":"PatientSupportAdjustedAngle","0074102B":"TableTopEccentricAdjustedAngle","0074102C":"TableTopPitchAdjustedAngle","0074102D":"TableTopRollAdjustedAngle","00741030":"DeliveryVerificationImageSequence","00741032":"VerificationImageTiming","00741034":"DoubleExposureFlag","00741036":"DoubleExposureOrdering","00741038":"DoubleExposureMetersetTrial","0074103A":"DoubleExposureFieldDeltaTrial","00741040":"RelatedReferenceRTImageSequence","00741042":"GeneralMachineVerificationSequence","00741044":"ConventionalMachineVerificationSequence","00741046":"IonMachineVerificationSequence","00741048":"FailedAttributesSequence","0074104A":"OverriddenAttributesSequence","0074104C":"ConventionalControlPointVerificationSequence","0074104E":"IonControlPointVerificationSequence","00741050":"AttributeOccurrenceSequence","00741052":"AttributeOccurrencePointer","00741054":"AttributeItemSelector","00741056":"AttributeOccurrencePrivateCreator","00741057":"SelectorSequencePointerItems","00741200":"ScheduledProcedureStepPriority","00741202":"WorklistLabel","00741204":"ProcedureStepLabel","00741210":"ScheduledProcessingParametersSequence","00741212":"PerformedProcessingParametersSequence","00741216":"UnifiedProcedureStepPerformedProcedureSequence","00741220":"RelatedProcedureStepSequence","00741222":"ProcedureStepRelationshipType","00741224":"ReplacedProcedureStepSequence","00741230":"DeletionLock","00741234":"ReceivingAE","00741236":"RequestingAE","00741238":"ReasonForCancellation","00741242":"SCPStatus","00741244":"SubscriptionListStatus","00741246":"UnifiedProcedureStepListStatus","00741324":"BeamOrderIndex","00741338":"DoubleExposureMeterset","0074133A":"DoubleExposureFieldDelta","00741401":"BrachyTaskSequence","00741402":"ContinuationStartTotalReferenceAirKerma","00741403":"ContinuationEndTotalReferenceAirKerma","00741404":"ContinuationPulseNumber","00741405":"ChannelDeliveryOrderSequence","00741406":"ReferencedChannelNumber","00741407":"StartCumulativeTimeWeight","00741408":"EndCumulativeTimeWeight","00741409":"OmittedChannelSequence","0074140A":"ReasonForChannelOmission","0074140B":"ReasonForChannelOmissionDescription","0074140C":"ChannelDeliveryOrderIndex","0074140D":"ChannelDeliveryContinuationSequence","0074140E":"OmittedApplicationSetupSequence","00760001":"ImplantAssemblyTemplateName","00760003":"ImplantAssemblyTemplateIssuer","00760006":"ImplantAssemblyTemplateVersion","00760008":"ReplacedImplantAssemblyTemplateSequence","0076000A":"ImplantAssemblyTemplateType","0076000C":"OriginalImplantAssemblyTemplateSequence","0076000E":"DerivationImplantAssemblyTemplateSequence","00760010":"ImplantAssemblyTemplateTargetAnatomySequence","00760020":"ProcedureTypeCodeSequence","00760030":"SurgicalTechnique","00760032":"ComponentTypesSequence","00760034":"ComponentTypeCodeSequence","00760036":"ExclusiveComponentType","00760038":"MandatoryComponentType","00760040":"ComponentSequence","00760055":"ComponentID","00760060":"ComponentAssemblySequence","00760070":"Component1ReferencedID","00760080":"Component1ReferencedMatingFeatureSetID","00760090":"Component1ReferencedMatingFeatureID","007600A0":"Component2ReferencedID","007600B0":"Component2ReferencedMatingFeatureSetID","007600C0":"Component2ReferencedMatingFeatureID","00780001":"ImplantTemplateGroupName","00780010":"ImplantTemplateGroupDescription","00780020":"ImplantTemplateGroupIssuer","00780024":"ImplantTemplateGroupVersion","00780026":"ReplacedImplantTemplateGroupSequence","00780028":"ImplantTemplateGroupTargetAnatomySequence","0078002A":"ImplantTemplateGroupMembersSequence","0078002E":"ImplantTemplateGroupMemberID","00780050":"ThreeDImplantTemplateGroupMemberMatchingPoint","00780060":"ThreeDImplantTemplateGroupMemberMatchingAxes","00780070":"ImplantTemplateGroupMemberMatching2DCoordinatesSequence","00780090":"TwoDImplantTemplateGroupMemberMatchingPoint","007800A0":"TwoDImplantTemplateGroupMemberMatchingAxes","007800B0":"ImplantTemplateGroupVariationDimensionSequence","007800B2":"ImplantTemplateGroupVariationDimensionName","007800B4":"ImplantTemplateGroupVariationDimensionRankSequence","007800B6":"ReferencedImplantTemplateGroupMemberID","007800B8":"ImplantTemplateGroupVariationDimensionRank","00800001":"SurfaceScanAcquisitionTypeCodeSequence","00800002":"SurfaceScanModeCodeSequence","00800003":"RegistrationMethodCodeSequence","00800004":"ShotDurationTime","00800005":"ShotOffsetTime","00800006":"SurfacePointPresentationValueData","00800007":"SurfacePointColorCIELabValueData","00800008":"UVMappingSequence","00800009":"TextureLabel","00800010":"UValueData","00800011":"VValueData","00800012":"ReferencedTextureSequence","00800013":"ReferencedSurfaceDataSequence","00820001":"AssessmentSummary","00820003":"AssessmentSummaryDescription","00820004":"AssessedSOPInstanceSequence","00820005":"ReferencedComparisonSOPInstanceSequence","00820006":"NumberOfAssessmentObservations","00820007":"AssessmentObservationsSequence","00820008":"ObservationSignificance","0082000A":"ObservationDescription","0082000C":"StructuredConstraintObservationSequence","00820010":"AssessedAttributeValueSequence","00820016":"AssessmentSetID","00820017":"AssessmentRequesterSequence","00820018":"SelectorAttributeName","00820019":"SelectorAttributeKeyword","00820021":"AssessmentTypeCodeSequence","00820022":"ObservationBasisCodeSequence","00820023":"AssessmentLabel","00820032":"ConstraintType","00820033":"SpecificationSelectionGuidance","00820034":"ConstraintValueSequence","00820035":"RecommendedDefaultValueSequence","00820036":"ConstraintViolationSignificance","00820037":"ConstraintViolationCondition","00820038":"ModifiableConstraintFlag","00880130":"StorageMediaFileSetID","00880140":"StorageMediaFileSetUID","00880200":"IconImageSequence","00880904":"TopicTitle","00880906":"TopicSubject","00880910":"TopicAuthor","00880912":"TopicKeywords","01000410":"SOPInstanceStatus","01000420":"SOPAuthorizationDateTime","01000424":"SOPAuthorizationComment","01000426":"AuthorizationEquipmentCertificationNumber","04000005":"MACIDNumber","04000010":"MACCalculationTransferSyntaxUID","04000015":"MACAlgorithm","04000020":"DataElementsSigned","04000100":"DigitalSignatureUID","04000105":"DigitalSignatureDateTime","04000110":"CertificateType","04000115":"CertificateOfSigner","04000120":"Signature","04000305":"CertifiedTimestampType","04000310":"CertifiedTimestamp","04000315":"","04000401":"DigitalSignaturePurposeCodeSequence","04000402":"ReferencedDigitalSignatureSequence","04000403":"ReferencedSOPInstanceMACSequence","04000404":"MAC","04000500":"EncryptedAttributesSequence","04000510":"EncryptedContentTransferSyntaxUID","04000520":"EncryptedContent","04000550":"ModifiedAttributesSequence","04000561":"OriginalAttributesSequence","04000562":"AttributeModificationDateTime","04000563":"ModifyingSystem","04000564":"SourceOfPreviousValues","04000565":"ReasonForTheAttributeModification","04000600":"InstanceOriginStatus",20000010:"NumberOfCopies","2000001E":"PrinterConfigurationSequence",20000020:"PrintPriority",20000030:"MediumType",20000040:"FilmDestination",20000050:"FilmSessionLabel",20000060:"MemoryAllocation",20000061:"MaximumMemoryAllocation",20000062:"ColorImagePrintingFlag",20000063:"CollationFlag",20000065:"AnnotationFlag",20000067:"ImageOverlayFlag",20000069:"PresentationLUTFlag","2000006A":"ImageBoxPresentationLUTFlag","200000A0":"MemoryBitDepth","200000A1":"PrintingBitDepth","200000A2":"MediaInstalledSequence","200000A4":"OtherMediaAvailableSequence","200000A8":"SupportedImageDisplayFormatsSequence",20000500:"ReferencedFilmBoxSequence",20000510:"ReferencedStoredPrintSequence",20100010:"ImageDisplayFormat",20100030:"AnnotationDisplayFormatID",20100040:"FilmOrientation",20100050:"FilmSizeID",20100052:"PrinterResolutionID",20100054:"DefaultPrinterResolutionID",20100060:"MagnificationType",20100080:"SmoothingType","201000A6":"DefaultMagnificationType","201000A7":"OtherMagnificationTypesAvailable","201000A8":"DefaultSmoothingType","201000A9":"OtherSmoothingTypesAvailable",20100100:"BorderDensity",20100110:"EmptyImageDensity",20100120:"MinDensity",20100130:"MaxDensity",20100140:"Trim",20100150:"ConfigurationInformation",20100152:"ConfigurationInformationDescription",20100154:"MaximumCollatedFilms","2010015E":"Illumination",20100160:"ReflectedAmbientLight",20100376:"PrinterPixelSpacing",20100500:"ReferencedFilmSessionSequence",20100510:"ReferencedImageBoxSequence",20100520:"ReferencedBasicAnnotationBoxSequence",20200010:"ImageBoxPosition",20200020:"Polarity",20200030:"RequestedImageSize",20200040:"RequestedDecimateCropBehavior",20200050:"RequestedResolutionID","202000A0":"RequestedImageSizeFlag","202000A2":"DecimateCropResult",20200110:"BasicGrayscaleImageSequence",20200111:"BasicColorImageSequence",20200130:"ReferencedImageOverlayBoxSequence",20200140:"ReferencedVOILUTBoxSequence",20300010:"AnnotationPosition",20300020:"TextString",20400010:"ReferencedOverlayPlaneSequence",20400011:"ReferencedOverlayPlaneGroups",20400020:"OverlayPixelDataSequence",20400060:"OverlayMagnificationType",20400070:"OverlaySmoothingType",20400072:"OverlayOrImageMagnification",20400074:"MagnifyToNumberOfColumns",20400080:"OverlayForegroundDensity",20400082:"OverlayBackgroundDensity",20400090:"OverlayMode",20400100:"ThresholdDensity",20400500:"ReferencedImageBoxSequenceRetired",20500010:"PresentationLUTSequence",20500020:"PresentationLUTShape",20500500:"ReferencedPresentationLUTSequence",21000010:"PrintJobID",21000020:"ExecutionStatus",21000030:"ExecutionStatusInfo",21000040:"CreationDate",21000050:"CreationTime",21000070:"Originator",21000140:"DestinationAE",21000160:"OwnerID",21000170:"NumberOfFilms",21000500:"ReferencedPrintJobSequencePullStoredPrint",21100010:"PrinterStatus",21100020:"PrinterStatusInfo",21100030:"PrinterName",21100099:"PrintQueueID",21200010:"QueueStatus",21200050:"PrintJobDescriptionSequence",21200070:"ReferencedPrintJobSequence",21300010:"PrintManagementCapabilitiesSequence",21300015:"PrinterCharacteristicsSequence",21300030:"FilmBoxContentSequence",21300040:"ImageBoxContentSequence",21300050:"AnnotationContentSequence",21300060:"ImageOverlayBoxContentSequence",21300080:"PresentationLUTContentSequence","213000A0":"ProposedStudySequence","213000C0":"OriginalImageSequence",22000001:"LabelUsingInformationExtractedFromInstances",22000002:"LabelText",22000003:"LabelStyleSelection",22000004:"MediaDisposition",22000005:"BarcodeValue",22000006:"BarcodeSymbology",22000007:"AllowMediaSplitting",22000008:"IncludeNonDICOMObjects",22000009:"IncludeDisplayApplication","2200000A":"PreserveCompositeInstancesAfterMediaCreation","2200000B":"TotalNumberOfPiecesOfMediaCreated","2200000C":"RequestedMediaApplicationProfile","2200000D":"ReferencedStorageMediaSequence","2200000E":"FailureAttributes","2200000F":"AllowLossyCompression",22000020:"RequestPriority",30020002:"RTImageLabel",30020003:"RTImageName",30020004:"RTImageDescription","3002000A":"ReportedValuesOrigin","3002000C":"RTImagePlane","3002000D":"XRayImageReceptorTranslation","3002000E":"XRayImageReceptorAngle",30020010:"RTImageOrientation",30020011:"ImagePlanePixelSpacing",30020012:"RTImagePosition",30020020:"RadiationMachineName",30020022:"RadiationMachineSAD",30020024:"RadiationMachineSSD",30020026:"RTImageSID",30020028:"SourceToReferenceObjectDistance",30020029:"FractionNumber",30020030:"ExposureSequence",30020032:"MetersetExposure",30020034:"DiaphragmPosition",30020040:"FluenceMapSequence",30020041:"FluenceDataSource",30020042:"FluenceDataScale",30020050:"PrimaryFluenceModeSequence",30020051:"FluenceMode",30020052:"FluenceModeID",30040001:"DVHType",30040002:"DoseUnits",30040004:"DoseType",30040005:"SpatialTransformOfDose",30040006:"DoseComment",30040008:"NormalizationPoint","3004000A":"DoseSummationType","3004000C":"GridFrameOffsetVector","3004000E":"DoseGridScaling",30040010:"RTDoseROISequence",30040012:"DoseValue",30040014:"TissueHeterogeneityCorrection",30040040:"DVHNormalizationPoint",30040042:"DVHNormalizationDoseValue",30040050:"DVHSequence",30040052:"DVHDoseScaling",30040054:"DVHVolumeUnits",30040056:"DVHNumberOfBins",30040058:"DVHData",30040060:"DVHReferencedROISequence",30040062:"DVHROIContributionType",30040070:"DVHMinimumDose",30040072:"DVHMaximumDose",30040074:"DVHMeanDose",30060002:"StructureSetLabel",30060004:"StructureSetName",30060006:"StructureSetDescription",30060008:"StructureSetDate",30060009:"StructureSetTime",30060010:"ReferencedFrameOfReferenceSequence",30060012:"RTReferencedStudySequence",30060014:"RTReferencedSeriesSequence",30060016:"ContourImageSequence",30060018:"PredecessorStructureSetSequence",30060020:"StructureSetROISequence",30060022:"ROINumber",30060024:"ReferencedFrameOfReferenceUID",30060026:"ROIName",30060028:"ROIDescription","3006002A":"ROIDisplayColor","3006002C":"ROIVolume",30060030:"RTRelatedROISequence",30060033:"RTROIRelationship",30060036:"ROIGenerationAlgorithm",30060038:"ROIGenerationDescription",30060039:"ROIContourSequence",30060040:"ContourSequence",30060042:"ContourGeometricType",30060044:"ContourSlabThickness",30060045:"ContourOffsetVector",30060046:"NumberOfContourPoints",30060048:"ContourNumber",30060049:"AttachedContours",30060050:"ContourData",30060080:"RTROIObservationsSequence",30060082:"ObservationNumber",30060084:"ReferencedROINumber",30060085:"ROIObservationLabel",30060086:"RTROIIdentificationCodeSequence",30060088:"ROIObservationDescription","300600A0":"RelatedRTROIObservationsSequence","300600A4":"RTROIInterpretedType","300600A6":"ROIInterpreter","300600B0":"ROIPhysicalPropertiesSequence","300600B2":"ROIPhysicalProperty","300600B4":"ROIPhysicalPropertyValue","300600B6":"ROIElementalCompositionSequence","300600B7":"ROIElementalCompositionAtomicNumber","300600B8":"ROIElementalCompositionAtomicMassFraction","300600B9":"AdditionalRTROIIdentificationCodeSequence","300600C0":"FrameOfReferenceRelationshipSequence","300600C2":"RelatedFrameOfReferenceUID","300600C4":"FrameOfReferenceTransformationType","300600C6":"FrameOfReferenceTransformationMatrix","300600C8":"FrameOfReferenceTransformationComment",30080010:"MeasuredDoseReferenceSequence",30080012:"MeasuredDoseDescription",30080014:"MeasuredDoseType",30080016:"MeasuredDoseValue",30080020:"TreatmentSessionBeamSequence",30080021:"TreatmentSessionIonBeamSequence",30080022:"CurrentFractionNumber",30080024:"TreatmentControlPointDate",30080025:"TreatmentControlPointTime","3008002A":"TreatmentTerminationStatus","3008002B":"TreatmentTerminationCode","3008002C":"TreatmentVerificationStatus",30080030:"ReferencedTreatmentRecordSequence",30080032:"SpecifiedPrimaryMeterset",30080033:"SpecifiedSecondaryMeterset",30080036:"DeliveredPrimaryMeterset",30080037:"DeliveredSecondaryMeterset","3008003A":"SpecifiedTreatmentTime","3008003B":"DeliveredTreatmentTime",30080040:"ControlPointDeliverySequence",30080041:"IonControlPointDeliverySequence",30080042:"SpecifiedMeterset",30080044:"DeliveredMeterset",30080045:"MetersetRateSet",30080046:"MetersetRateDelivered",30080047:"ScanSpotMetersetsDelivered",30080048:"DoseRateDelivered",30080050:"TreatmentSummaryCalculatedDoseReferenceSequence",30080052:"CumulativeDoseToDoseReference",30080054:"FirstTreatmentDate",30080056:"MostRecentTreatmentDate","3008005A":"NumberOfFractionsDelivered",30080060:"OverrideSequence",30080061:"ParameterSequencePointer",30080062:"OverrideParameterPointer",30080063:"ParameterItemIndex",30080064:"MeasuredDoseReferenceNumber",30080065:"ParameterPointer",30080066:"OverrideReason",30080067:"ParameterValueNumber",30080068:"CorrectedParameterSequence","3008006A":"CorrectionValue",30080070:"CalculatedDoseReferenceSequence",30080072:"CalculatedDoseReferenceNumber",30080074:"CalculatedDoseReferenceDescription",30080076:"CalculatedDoseReferenceDoseValue",30080078:"StartMeterset","3008007A":"EndMeterset",30080080:"ReferencedMeasuredDoseReferenceSequence",30080082:"ReferencedMeasuredDoseReferenceNumber",30080090:"ReferencedCalculatedDoseReferenceSequence",30080092:"ReferencedCalculatedDoseReferenceNumber","300800A0":"BeamLimitingDeviceLeafPairsSequence","300800B0":"RecordedWedgeSequence","300800C0":"RecordedCompensatorSequence","300800D0":"RecordedBlockSequence","300800E0":"TreatmentSummaryMeasuredDoseReferenceSequence","300800F0":"RecordedSnoutSequence","300800F2":"RecordedRangeShifterSequence","300800F4":"RecordedLateralSpreadingDeviceSequence","300800F6":"RecordedRangeModulatorSequence",30080100:"RecordedSourceSequence",30080105:"SourceSerialNumber",30080110:"TreatmentSessionApplicationSetupSequence",30080116:"ApplicationSetupCheck",30080120:"RecordedBrachyAccessoryDeviceSequence",30080122:"ReferencedBrachyAccessoryDeviceNumber",30080130:"RecordedChannelSequence",30080132:"SpecifiedChannelTotalTime",30080134:"DeliveredChannelTotalTime",30080136:"SpecifiedNumberOfPulses",30080138:"DeliveredNumberOfPulses","3008013A":"SpecifiedPulseRepetitionInterval","3008013C":"DeliveredPulseRepetitionInterval",30080140:"RecordedSourceApplicatorSequence",30080142:"ReferencedSourceApplicatorNumber",30080150:"RecordedChannelShieldSequence",30080152:"ReferencedChannelShieldNumber",30080160:"BrachyControlPointDeliveredSequence",30080162:"SafePositionExitDate",30080164:"SafePositionExitTime",30080166:"SafePositionReturnDate",30080168:"SafePositionReturnTime",30080171:"PulseSpecificBrachyControlPointDeliveredSequence",30080172:"PulseNumber",30080173:"BrachyPulseControlPointDeliveredSequence",30080200:"CurrentTreatmentStatus",30080202:"TreatmentStatusComment",30080220:"FractionGroupSummarySequence",30080223:"ReferencedFractionNumber",30080224:"FractionGroupType",30080230:"BeamStopperPosition",30080240:"FractionStatusSummarySequence",30080250:"TreatmentDate",30080251:"TreatmentTime","300A0002":"RTPlanLabel","300A0003":"RTPlanName","300A0004":"RTPlanDescription","300A0006":"RTPlanDate","300A0007":"RTPlanTime","300A0009":"TreatmentProtocols","300A000A":"PlanIntent","300A000B":"TreatmentSites","300A000C":"RTPlanGeometry","300A000E":"PrescriptionDescription","300A0010":"DoseReferenceSequence","300A0012":"DoseReferenceNumber","300A0013":"DoseReferenceUID","300A0014":"DoseReferenceStructureType","300A0015":"NominalBeamEnergyUnit","300A0016":"DoseReferenceDescription","300A0018":"DoseReferencePointCoordinates","300A001A":"NominalPriorDose","300A0020":"DoseReferenceType","300A0021":"ConstraintWeight","300A0022":"DeliveryWarningDose","300A0023":"DeliveryMaximumDose","300A0025":"TargetMinimumDose","300A0026":"TargetPrescriptionDose","300A0027":"TargetMaximumDose","300A0028":"TargetUnderdoseVolumeFraction","300A002A":"OrganAtRiskFullVolumeDose","300A002B":"OrganAtRiskLimitDose","300A002C":"OrganAtRiskMaximumDose","300A002D":"OrganAtRiskOverdoseVolumeFraction","300A0040":"ToleranceTableSequence","300A0042":"ToleranceTableNumber","300A0043":"ToleranceTableLabel","300A0044":"GantryAngleTolerance","300A0046":"BeamLimitingDeviceAngleTolerance","300A0048":"BeamLimitingDeviceToleranceSequence","300A004A":"BeamLimitingDevicePositionTolerance","300A004B":"SnoutPositionTolerance","300A004C":"PatientSupportAngleTolerance","300A004E":"TableTopEccentricAngleTolerance","300A004F":"TableTopPitchAngleTolerance","300A0050":"TableTopRollAngleTolerance","300A0051":"TableTopVerticalPositionTolerance","300A0052":"TableTopLongitudinalPositionTolerance","300A0053":"TableTopLateralPositionTolerance","300A0055":"RTPlanRelationship","300A0070":"FractionGroupSequence","300A0071":"FractionGroupNumber","300A0072":"FractionGroupDescription","300A0078":"NumberOfFractionsPlanned","300A0079":"NumberOfFractionPatternDigitsPerDay","300A007A":"RepeatFractionCycleLength","300A007B":"FractionPattern","300A0080":"NumberOfBeams","300A0082":"BeamDoseSpecificationPoint","300A0083":"ReferencedDoseReferenceUID","300A0084":"BeamDose","300A0086":"BeamMeterset","300A0088":"BeamDosePointDepth","300A0089":"BeamDosePointEquivalentDepth","300A008A":"BeamDosePointSSD","300A008B":"BeamDoseMeaning","300A008C":"BeamDoseVerificationControlPointSequence","300A008D":"AverageBeamDosePointDepth","300A008E":"AverageBeamDosePointEquivalentDepth","300A008F":"AverageBeamDosePointSSD","300A0090":"BeamDoseType","300A0091":"AlternateBeamDose","300A0092":"AlternateBeamDoseType","300A0093":"DepthValueAveragingFlag","300A0094":"BeamDosePointSourceToExternalContourDistance","300A00A0":"NumberOfBrachyApplicationSetups","300A00A2":"BrachyApplicationSetupDoseSpecificationPoint","300A00A4":"BrachyApplicationSetupDose","300A00B0":"BeamSequence","300A00B2":"TreatmentMachineName","300A00B3":"PrimaryDosimeterUnit","300A00B4":"SourceAxisDistance","300A00B6":"BeamLimitingDeviceSequence","300A00B8":"RTBeamLimitingDeviceType","300A00BA":"SourceToBeamLimitingDeviceDistance","300A00BB":"IsocenterToBeamLimitingDeviceDistance","300A00BC":"NumberOfLeafJawPairs","300A00BE":"LeafPositionBoundaries","300A00C0":"BeamNumber","300A00C2":"BeamName","300A00C3":"BeamDescription","300A00C4":"BeamType","300A00C5":"BeamDeliveryDurationLimit","300A00C6":"RadiationType","300A00C7":"HighDoseTechniqueType","300A00C8":"ReferenceImageNumber","300A00CA":"PlannedVerificationImageSequence","300A00CC":"ImagingDeviceSpecificAcquisitionParameters","300A00CE":"TreatmentDeliveryType","300A00D0":"NumberOfWedges","300A00D1":"WedgeSequence","300A00D2":"WedgeNumber","300A00D3":"WedgeType","300A00D4":"WedgeID","300A00D5":"WedgeAngle","300A00D6":"WedgeFactor","300A00D7":"TotalWedgeTrayWaterEquivalentThickness","300A00D8":"WedgeOrientation","300A00D9":"IsocenterToWedgeTrayDistance","300A00DA":"SourceToWedgeTrayDistance","300A00DB":"WedgeThinEdgePosition","300A00DC":"BolusID","300A00DD":"BolusDescription","300A00DE":"EffectiveWedgeAngle","300A00E0":"NumberOfCompensators","300A00E1":"MaterialID","300A00E2":"TotalCompensatorTrayFactor","300A00E3":"CompensatorSequence","300A00E4":"CompensatorNumber","300A00E5":"CompensatorID","300A00E6":"SourceToCompensatorTrayDistance","300A00E7":"CompensatorRows","300A00E8":"CompensatorColumns","300A00E9":"CompensatorPixelSpacing","300A00EA":"CompensatorPosition","300A00EB":"CompensatorTransmissionData","300A00EC":"CompensatorThicknessData","300A00ED":"NumberOfBoli","300A00EE":"CompensatorType","300A00EF":"CompensatorTrayID","300A00F0":"NumberOfBlocks","300A00F2":"TotalBlockTrayFactor","300A00F3":"TotalBlockTrayWaterEquivalentThickness","300A00F4":"BlockSequence","300A00F5":"BlockTrayID","300A00F6":"SourceToBlockTrayDistance","300A00F7":"IsocenterToBlockTrayDistance","300A00F8":"BlockType","300A00F9":"AccessoryCode","300A00FA":"BlockDivergence","300A00FB":"BlockMountingPosition","300A00FC":"BlockNumber","300A00FE":"BlockName","300A0100":"BlockThickness","300A0102":"BlockTransmission","300A0104":"BlockNumberOfPoints","300A0106":"BlockData","300A0107":"ApplicatorSequence","300A0108":"ApplicatorID","300A0109":"ApplicatorType","300A010A":"ApplicatorDescription","300A010C":"CumulativeDoseReferenceCoefficient","300A010E":"FinalCumulativeMetersetWeight","300A0110":"NumberOfControlPoints","300A0111":"ControlPointSequence","300A0112":"ControlPointIndex","300A0114":"NominalBeamEnergy","300A0115":"DoseRateSet","300A0116":"WedgePositionSequence","300A0118":"WedgePosition","300A011A":"BeamLimitingDevicePositionSequence","300A011C":"LeafJawPositions","300A011E":"GantryAngle","300A011F":"GantryRotationDirection","300A0120":"BeamLimitingDeviceAngle","300A0121":"BeamLimitingDeviceRotationDirection","300A0122":"PatientSupportAngle","300A0123":"PatientSupportRotationDirection","300A0124":"TableTopEccentricAxisDistance","300A0125":"TableTopEccentricAngle","300A0126":"TableTopEccentricRotationDirection","300A0128":"TableTopVerticalPosition","300A0129":"TableTopLongitudinalPosition","300A012A":"TableTopLateralPosition","300A012C":"IsocenterPosition","300A012E":"SurfaceEntryPoint","300A0130":"SourceToSurfaceDistance","300A0131":"AverageBeamDosePointSourceToExternalContourDistance","300A0132":"SourceToExternalContourDistance","300A0133":"ExternalContourEntryPoint","300A0134":"CumulativeMetersetWeight","300A0140":"TableTopPitchAngle","300A0142":"TableTopPitchRotationDirection","300A0144":"TableTopRollAngle","300A0146":"TableTopRollRotationDirection","300A0148":"HeadFixationAngle","300A014A":"GantryPitchAngle","300A014C":"GantryPitchRotationDirection","300A014E":"GantryPitchAngleTolerance","300A0150":"FixationEye","300A0151":"ChairHeadFramePosition","300A0152":"HeadFixationAngleTolerance","300A0153":"ChairHeadFramePositionTolerance","300A0154":"FixationLightAzimuthalAngleTolerance","300A0155":"FixationLightPolarAngleTolerance","300A0180":"PatientSetupSequence","300A0182":"PatientSetupNumber","300A0183":"PatientSetupLabel","300A0184":"PatientAdditionalPosition","300A0190":"FixationDeviceSequence","300A0192":"FixationDeviceType","300A0194":"FixationDeviceLabel","300A0196":"FixationDeviceDescription","300A0198":"FixationDevicePosition","300A0199":"FixationDevicePitchAngle","300A019A":"FixationDeviceRollAngle","300A01A0":"ShieldingDeviceSequence","300A01A2":"ShieldingDeviceType","300A01A4":"ShieldingDeviceLabel","300A01A6":"ShieldingDeviceDescription","300A01A8":"ShieldingDevicePosition","300A01B0":"SetupTechnique","300A01B2":"SetupTechniqueDescription","300A01B4":"SetupDeviceSequence","300A01B6":"SetupDeviceType","300A01B8":"SetupDeviceLabel","300A01BA":"SetupDeviceDescription","300A01BC":"SetupDeviceParameter","300A01D0":"SetupReferenceDescription","300A01D2":"TableTopVerticalSetupDisplacement","300A01D4":"TableTopLongitudinalSetupDisplacement","300A01D6":"TableTopLateralSetupDisplacement","300A0200":"BrachyTreatmentTechnique","300A0202":"BrachyTreatmentType","300A0206":"TreatmentMachineSequence","300A0210":"SourceSequence","300A0212":"SourceNumber","300A0214":"SourceType","300A0216":"SourceManufacturer","300A0218":"ActiveSourceDiameter","300A021A":"ActiveSourceLength","300A021B":"SourceModelID","300A021C":"SourceDescription","300A0222":"SourceEncapsulationNominalThickness","300A0224":"SourceEncapsulationNominalTransmission","300A0226":"SourceIsotopeName","300A0228":"SourceIsotopeHalfLife","300A0229":"SourceStrengthUnits","300A022A":"ReferenceAirKermaRate","300A022B":"SourceStrength","300A022C":"SourceStrengthReferenceDate","300A022E":"SourceStrengthReferenceTime","300A0230":"ApplicationSetupSequence","300A0232":"ApplicationSetupType","300A0234":"ApplicationSetupNumber","300A0236":"ApplicationSetupName","300A0238":"ApplicationSetupManufacturer","300A0240":"TemplateNumber","300A0242":"TemplateType","300A0244":"TemplateName","300A0250":"TotalReferenceAirKerma","300A0260":"BrachyAccessoryDeviceSequence","300A0262":"BrachyAccessoryDeviceNumber","300A0263":"BrachyAccessoryDeviceID","300A0264":"BrachyAccessoryDeviceType","300A0266":"BrachyAccessoryDeviceName","300A026A":"BrachyAccessoryDeviceNominalThickness","300A026C":"BrachyAccessoryDeviceNominalTransmission","300A0271":"ChannelEffectiveLength","300A0272":"ChannelInnerLength","300A0273":"AfterloaderChannelID","300A0274":"SourceApplicatorTipLength","300A0280":"ChannelSequence","300A0282":"ChannelNumber","300A0284":"ChannelLength","300A0286":"ChannelTotalTime","300A0288":"SourceMovementType","300A028A":"NumberOfPulses","300A028C":"PulseRepetitionInterval","300A0290":"SourceApplicatorNumber","300A0291":"SourceApplicatorID","300A0292":"SourceApplicatorType","300A0294":"SourceApplicatorName","300A0296":"SourceApplicatorLength","300A0298":"SourceApplicatorManufacturer","300A029C":"SourceApplicatorWallNominalThickness","300A029E":"SourceApplicatorWallNominalTransmission","300A02A0":"SourceApplicatorStepSize","300A02A2":"TransferTubeNumber","300A02A4":"TransferTubeLength","300A02B0":"ChannelShieldSequence","300A02B2":"ChannelShieldNumber","300A02B3":"ChannelShieldID","300A02B4":"ChannelShieldName","300A02B8":"ChannelShieldNominalThickness","300A02BA":"ChannelShieldNominalTransmission","300A02C8":"FinalCumulativeTimeWeight","300A02D0":"BrachyControlPointSequence","300A02D2":"ControlPointRelativePosition","300A02D4":"ControlPoint3DPosition","300A02D6":"CumulativeTimeWeight","300A02E0":"CompensatorDivergence","300A02E1":"CompensatorMountingPosition","300A02E2":"SourceToCompensatorDistance","300A02E3":"TotalCompensatorTrayWaterEquivalentThickness","300A02E4":"IsocenterToCompensatorTrayDistance","300A02E5":"CompensatorColumnOffset","300A02E6":"IsocenterToCompensatorDistances","300A02E7":"CompensatorRelativeStoppingPowerRatio","300A02E8":"CompensatorMillingToolDiameter","300A02EA":"IonRangeCompensatorSequence","300A02EB":"CompensatorDescription","300A0302":"RadiationMassNumber","300A0304":"RadiationAtomicNumber","300A0306":"RadiationChargeState","300A0308":"ScanMode","300A0309":"ModulatedScanModeType","300A030A":"VirtualSourceAxisDistances","300A030C":"SnoutSequence","300A030D":"SnoutPosition","300A030F":"SnoutID","300A0312":"NumberOfRangeShifters","300A0314":"RangeShifterSequence","300A0316":"RangeShifterNumber","300A0318":"RangeShifterID","300A0320":"RangeShifterType","300A0322":"RangeShifterDescription","300A0330":"NumberOfLateralSpreadingDevices","300A0332":"LateralSpreadingDeviceSequence","300A0334":"LateralSpreadingDeviceNumber","300A0336":"LateralSpreadingDeviceID","300A0338":"LateralSpreadingDeviceType","300A033A":"LateralSpreadingDeviceDescription","300A033C":"LateralSpreadingDeviceWaterEquivalentThickness","300A0340":"NumberOfRangeModulators","300A0342":"RangeModulatorSequence","300A0344":"RangeModulatorNumber","300A0346":"RangeModulatorID","300A0348":"RangeModulatorType","300A034A":"RangeModulatorDescription","300A034C":"BeamCurrentModulationID","300A0350":"PatientSupportType","300A0352":"PatientSupportID","300A0354":"PatientSupportAccessoryCode","300A0355":"TrayAccessoryCode","300A0356":"FixationLightAzimuthalAngle","300A0358":"FixationLightPolarAngle","300A035A":"MetersetRate","300A0360":"RangeShifterSettingsSequence","300A0362":"RangeShifterSetting","300A0364":"IsocenterToRangeShifterDistance","300A0366":"RangeShifterWaterEquivalentThickness","300A0370":"LateralSpreadingDeviceSettingsSequence","300A0372":"LateralSpreadingDeviceSetting","300A0374":"IsocenterToLateralSpreadingDeviceDistance","300A0380":"RangeModulatorSettingsSequence","300A0382":"RangeModulatorGatingStartValue","300A0384":"RangeModulatorGatingStopValue","300A0386":"RangeModulatorGatingStartWaterEquivalentThickness","300A0388":"RangeModulatorGatingStopWaterEquivalentThickness","300A038A":"IsocenterToRangeModulatorDistance","300A038F":"ScanSpotTimeOffset","300A0390":"ScanSpotTuneID","300A0391":"ScanSpotPrescribedIndices","300A0392":"NumberOfScanSpotPositions","300A0393":"ScanSpotReordered","300A0394":"ScanSpotPositionMap","300A0395":"ScanSpotReorderingAllowed","300A0396":"ScanSpotMetersetWeights","300A0398":"ScanningSpotSize","300A039A":"NumberOfPaintings","300A03A0":"IonToleranceTableSequence","300A03A2":"IonBeamSequence","300A03A4":"IonBeamLimitingDeviceSequence","300A03A6":"IonBlockSequence","300A03A8":"IonControlPointSequence","300A03AA":"IonWedgeSequence","300A03AC":"IonWedgePositionSequence","300A0401":"ReferencedSetupImageSequence","300A0402":"SetupImageComment","300A0410":"MotionSynchronizationSequence","300A0412":"ControlPointOrientation","300A0420":"GeneralAccessorySequence","300A0421":"GeneralAccessoryID","300A0422":"GeneralAccessoryDescription","300A0423":"GeneralAccessoryType","300A0424":"GeneralAccessoryNumber","300A0425":"SourceToGeneralAccessoryDistance","300A0431":"ApplicatorGeometrySequence","300A0432":"ApplicatorApertureShape","300A0433":"ApplicatorOpening","300A0434":"ApplicatorOpeningX","300A0435":"ApplicatorOpeningY","300A0436":"SourceToApplicatorMountingPositionDistance","300A0440":"NumberOfBlockSlabItems","300A0441":"BlockSlabSequence","300A0442":"BlockSlabThickness","300A0443":"BlockSlabNumber","300A0450":"DeviceMotionControlSequence","300A0451":"DeviceMotionExecutionMode","300A0452":"DeviceMotionObservationMode","300A0453":"DeviceMotionParameterCodeSequence","300A0501":"DistalDepthFraction","300A0502":"DistalDepth","300A0503":"NominalRangeModulationFractions","300A0504":"NominalRangeModulatedRegionDepths","300A0505":"DepthDoseParametersSequence","300A0506":"DeliveredDepthDoseParametersSequence","300A0507":"DeliveredDistalDepthFraction","300A0508":"DeliveredDistalDepth","300A0509":"DeliveredNominalRangeModulationFractions","300A0510":"DeliveredNominalRangeModulatedRegionDepths","300A0511":"DeliveredReferenceDoseDefinition","300A0512":"ReferenceDoseDefinition","300C0002":"ReferencedRTPlanSequence","300C0004":"ReferencedBeamSequence","300C0006":"ReferencedBeamNumber","300C0007":"ReferencedReferenceImageNumber","300C0008":"StartCumulativeMetersetWeight","300C0009":"EndCumulativeMetersetWeight","300C000A":"ReferencedBrachyApplicationSetupSequence","300C000C":"ReferencedBrachyApplicationSetupNumber","300C000E":"ReferencedSourceNumber","300C0020":"ReferencedFractionGroupSequence","300C0022":"ReferencedFractionGroupNumber","300C0040":"ReferencedVerificationImageSequence","300C0042":"ReferencedReferenceImageSequence","300C0050":"ReferencedDoseReferenceSequence","300C0051":"ReferencedDoseReferenceNumber","300C0055":"BrachyReferencedDoseReferenceSequence","300C0060":"ReferencedStructureSetSequence","300C006A":"ReferencedPatientSetupNumber","300C0080":"ReferencedDoseSequence","300C00A0":"ReferencedToleranceTableNumber","300C00B0":"ReferencedBolusSequence","300C00C0":"ReferencedWedgeNumber","300C00D0":"ReferencedCompensatorNumber","300C00E0":"ReferencedBlockNumber","300C00F0":"ReferencedControlPointIndex","300C00F2":"ReferencedControlPointSequence","300C00F4":"ReferencedStartControlPointIndex","300C00F6":"ReferencedStopControlPointIndex","300C0100":"ReferencedRangeShifterNumber","300C0102":"ReferencedLateralSpreadingDeviceNumber","300C0104":"ReferencedRangeModulatorNumber","300C0111":"OmittedBeamTaskSequence","300C0112":"ReasonForOmission","300C0113":"ReasonForOmissionDescription","300E0002":"ApprovalStatus","300E0004":"ReviewDate","300E0005":"ReviewTime","300E0008":"ReviewerName",40000010:"Arbitrary",40004e3:"TextComments",40080040:"ResultsID",40080042:"ResultsIDIssuer",40080050:"ReferencedInterpretationSequence","400800FF":"ReportProductionStatusTrial",40080100:"InterpretationRecordedDate",40080101:"InterpretationRecordedTime",40080102:"InterpretationRecorder",40080103:"ReferenceToRecordedSound",40080108:"InterpretationTranscriptionDate",40080109:"InterpretationTranscriptionTime","4008010A":"InterpretationTranscriber","4008010B":"InterpretationText","4008010C":"InterpretationAuthor",40080111:"InterpretationApproverSequence",40080112:"InterpretationApprovalDate",40080113:"InterpretationApprovalTime",40080114:"PhysicianApprovingInterpretation",40080115:"InterpretationDiagnosisDescription",40080117:"InterpretationDiagnosisCodeSequence",40080118:"ResultsDistributionListSequence",40080119:"DistributionName","4008011A":"DistributionAddress",40080200:"InterpretationID",40080202:"InterpretationIDIssuer",40080210:"InterpretationTypeID",40080212:"InterpretationStatusID",40080300:"Impressions",40084e3:"ResultsComments",40100001:"LowEnergyDetectors",40100002:"HighEnergyDetectors",40100004:"DetectorGeometrySequence",40101001:"ThreatROIVoxelSequence",40101004:"ThreatROIBase",40101005:"ThreatROIExtents",40101006:"ThreatROIBitmap",40101007:"RouteSegmentID",40101008:"GantryType",40101009:"OOIOwnerType","4010100A":"RouteSegmentSequence",40101010:"PotentialThreatObjectID",40101011:"ThreatSequence",40101012:"ThreatCategory",40101013:"ThreatCategoryDescription",40101014:"ATDAbilityAssessment",40101015:"ATDAssessmentFlag",40101016:"ATDAssessmentProbability",40101017:"Mass",40101018:"Density",40101019:"ZEffective","4010101A":"BoardingPassID","4010101B":"CenterOfMass","4010101C":"CenterOfPTO","4010101D":"BoundingPolygon","4010101E":"RouteSegmentStartLocationID","4010101F":"RouteSegmentEndLocationID",40101020:"RouteSegmentLocationIDType",40101021:"AbortReason",40101023:"VolumeOfPTO",40101024:"AbortFlag",40101025:"RouteSegmentStartTime",40101026:"RouteSegmentEndTime",40101027:"TDRType",40101028:"InternationalRouteSegment",40101029:"ThreatDetectionAlgorithmandVersion","4010102A":"AssignedLocation","4010102B":"AlarmDecisionTime",40101031:"AlarmDecision",40101033:"NumberOfTotalObjects",40101034:"NumberOfAlarmObjects",40101037:"PTORepresentationSequence",40101038:"ATDAssessmentSequence",40101039:"TIPType","4010103A":"DICOSVersion",40101041:"OOIOwnerCreationTime",40101042:"OOIType",40101043:"OOISize",40101044:"AcquisitionStatus",40101045:"BasisMaterialsCodeSequence",40101046:"PhantomType",40101047:"OOIOwnerSequence",40101048:"ScanType",40101051:"ItineraryID",40101052:"ItineraryIDType",40101053:"ItineraryIDAssigningAuthority",40101054:"RouteID",40101055:"RouteIDAssigningAuthority",40101056:"InboundArrivalType",40101058:"CarrierID",40101059:"CarrierIDAssigningAuthority",40101060:"SourceOrientation",40101061:"SourcePosition",40101062:"BeltHeight",40101064:"AlgorithmRoutingCodeSequence",40101067:"TransportClassification",40101068:"OOITypeDescriptor",40101069:"TotalProcessingTime","4010106C":"DetectorCalibrationData","4010106D":"AdditionalScreeningPerformed","4010106E":"AdditionalInspectionSelectionCriteria","4010106F":"AdditionalInspectionMethodSequence",40101070:"AITDeviceType",40101071:"QRMeasurementsSequence",40101072:"TargetMaterialSequence",40101073:"SNRThreshold",40101075:"ImageScaleRepresentation",40101076:"ReferencedPTOSequence",40101077:"ReferencedTDRInstanceSequence",40101078:"PTOLocationDescription",40101079:"AnomalyLocatorIndicatorSequence","4010107A":"AnomalyLocatorIndicator","4010107B":"PTORegionSequence","4010107C":"InspectionSelectionCriteria","4010107D":"SecondaryInspectionMethodSequence","4010107E":"PRCSToRCSOrientation","4FFE0001":"MACParametersSequence",52009229:"SharedFunctionalGroupsSequence",52009230:"PerFrameFunctionalGroupsSequence",54000100:"WaveformSequence",54000110:"ChannelMinimumValue",54000112:"ChannelMaximumValue",54001004:"WaveformBitsAllocated",54001006:"WaveformSampleInterpretation","5400100A":"WaveformPaddingValue",54001010:"WaveformData",56000010:"FirstOrderPhaseCorrectionAngle",56000020:"SpectroscopyData","7FE00008":"FloatPixelData","7FE00009":"DoubleFloatPixelData","7FE00010":"PixelData","7FE00020":"CoefficientsSDVN","7FE00030":"CoefficientsSDHN","7FE00040":"CoefficientsSDDN",FFFAFFFA:"DigitalSignaturesSequence",FFFCFFFC:"DataSetTrailingPadding",FFFEE000:"Item",FFFEE00D:"ItemDelimitationItem",FFFEE0DD:"SequenceDelimitationItem"};function Pu(){let e="2.25."+Math.floor(1+9*Math.random());for(;e.length<44;)e+=Math.floor(1+10*Math.random());return e}Object.freeze(Iu),Object.freeze({CommandGroupLength:"00000000",CommandLengthToEnd:"00000001",AffectedSOPClassUID:"00000002",RequestedSOPClassUID:"00000003",CommandRecognitionCode:"00000010",CommandField:"00000100",MessageID:"00000110",MessageIDBeingRespondedTo:"00000120",Initiator:"00000200",Receiver:"00000300",FindLocation:"00000400",MoveDestination:"00000600",Priority:"00000700",CommandDataSetType:"00000800",NumberOfMatches:"00000850",ResponseSequenceNumber:"00000860",Status:"00000900",OffendingElement:"00000901",ErrorComment:"00000902",ErrorID:"00000903",AffectedSOPInstanceUID:"00001000",RequestedSOPInstanceUID:"00001001",EventTypeID:"00001002",AttributeIdentifierList:"00001005",ActionTypeID:"00001008",NumberOfRemainingSuboperations:"00001020",NumberOfCompletedSuboperations:"00001021",NumberOfFailedSuboperations:"00001022",NumberOfWarningSuboperations:"00001023",MoveOriginatorApplicationEntityTitle:"00001030",MoveOriginatorMessageID:"00001031",DialogReceiver:"00004000",TerminalType:"00004010",MessageSetID:"00005010",EndMessageID:"00005020",DisplayFormat:"00005110",PagePositionID:"00005120",TextFormatID:"00005130",NormalReverse:"00005140",AddGrayScale:"00005150",Borders:"00005160",Copies:"00005170",CommandMagnificationType:"00005180",Erase:"00005190",Print:"000051A0",Overlays:"000051B0",FileMetaInformationGroupLength:"00020000",FileMetaInformationVersion:"00020001",MediaStorageSOPClassUID:"00020002",MediaStorageSOPInstanceUID:"00020003",TransferSyntaxUID:"00020010",ImplementationClassUID:"00020012",ImplementationVersionName:"00020013",SourceApplicationEntityTitle:"00020016",SendingApplicationEntityTitle:"00020017",ReceivingApplicationEntityTitle:"00020018",PrivateInformationCreatorUID:"00020100",PrivateInformation:"00020102",FileSetID:"00041130",FileSetDescriptorFileID:"00041141",SpecificCharacterSetOfFileSetDescriptorFile:"00041142",OffsetOfTheFirstDirectoryRecordOfTheRootDirectoryEntity:"00041200",OffsetOfTheLastDirectoryRecordOfTheRootDirectoryEntity:"00041202",FileSetConsistencyFlag:"00041212",DirectoryRecordSequence:"00041220",OffsetOfTheNextDirectoryRecord:"00041400",RecordInUseFlag:"00041410",OffsetOfReferencedLowerLevelDirectoryEntity:"00041420",DirectoryRecordType:"00041430",PrivateRecordUID:"00041432",ReferencedFileID:"00041500",MRDRDirectoryRecordOffset:"00041504",ReferencedSOPClassUIDInFile:"00041510",ReferencedSOPInstanceUIDInFile:"00041511",ReferencedTransferSyntaxUIDInFile:"00041512",ReferencedRelatedGeneralSOPClassUIDInFile:"0004151A",NumberOfReferences:"00041600",LengthToEnd:"00080001",SpecificCharacterSet:"00080005",LanguageCodeSequence:"00080006",ImageType:"00080008",RecognitionCode:"00080010",InstanceCreationDate:"00080012",InstanceCreationTime:"00080013",InstanceCreatorUID:"00080014",InstanceCoercionDateTime:"00080015",SOPClassUID:"00080016",SOPInstanceUID:"00080018",RelatedGeneralSOPClassUID:"0008001A",OriginalSpecializedSOPClassUID:"0008001B",StudyDate:"00080020",SeriesDate:"00080021",AcquisitionDate:"00080022",ContentDate:"00080023",OverlayDate:"00080024",CurveDate:"00080025",AcquisitionDateTime:"0008002A",StudyTime:"00080030",SeriesTime:"00080031",AcquisitionTime:"00080032",ContentTime:"00080033",OverlayTime:"00080034",CurveTime:"00080035",DataSetType:"00080040",DataSetSubtype:"00080041",NuclearMedicineSeriesType:"00080042",AccessionNumber:"00080050",IssuerOfAccessionNumberSequence:"00080051",QueryRetrieveLevel:"00080052",QueryRetrieveView:"00080053",RetrieveAETitle:"00080054",StationAETitle:"00080055",InstanceAvailability:"00080056",FailedSOPInstanceUIDList:"00080058",Modality:"00080060",ModalitiesInStudy:"00080061",SOPClassesInStudy:"00080062",AnatomicRegionsInStudyCodeSequence:"00080063",ConversionType:"00080064",PresentationIntentType:"00080068",Manufacturer:"00080070",InstitutionName:"00080080",InstitutionAddress:"00080081",InstitutionCodeSequence:"00080082",ReferringPhysicianName:"00080090",ReferringPhysicianAddress:"00080092",ReferringPhysicianTelephoneNumbers:"00080094",ReferringPhysicianIdentificationSequence:"00080096",ConsultingPhysicianName:"0008009C",ConsultingPhysicianIdentificationSequence:"0008009D",CodeValue:"00080100",ExtendedCodeValue:"00080101",CodingSchemeDesignator:"00080102",CodingSchemeVersion:"00080103",CodeMeaning:"00080104",MappingResource:"00080105",ContextGroupVersion:"00080106",ContextGroupLocalVersion:"00080107",ExtendedCodeMeaning:"00080108",CodingSchemeResourcesSequence:"00080109",CodingSchemeURLType:"0008010A",ContextGroupExtensionFlag:"0008010B",CodingSchemeUID:"0008010C",ContextGroupExtensionCreatorUID:"0008010D",CodingSchemeURL:"0008010E",ContextIdentifier:"0008010F",CodingSchemeIdentificationSequence:"00080110",CodingSchemeRegistry:"00080112",CodingSchemeExternalID:"00080114",CodingSchemeName:"00080115",CodingSchemeResponsibleOrganization:"00080116",ContextUID:"00080117",MappingResourceUID:"00080118",LongCodeValue:"00080119",URNCodeValue:"00080120",EquivalentCodeSequence:"00080121",MappingResourceName:"00080122",ContextGroupIdentificationSequence:"00080123",MappingResourceIdentificationSequence:"00080124",TimezoneOffsetFromUTC:"00080201",ResponsibleGroupCodeSequence:"00080220",EquipmentModality:"00080221",ManufacturerRelatedModelGroup:"00080222",PrivateDataElementCharacteristicsSequence:"00080300",PrivateGroupReference:"00080301",PrivateCreatorReference:"00080302",BlockIdentifyingInformationStatus:"00080303",NonidentifyingPrivateElements:"00080304",DeidentificationActionSequence:"00080305",IdentifyingPrivateElements:"00080306",DeidentificationAction:"00080307",PrivateDataElement:"00080308",PrivateDataElementValueMultiplicity:"00080309",PrivateDataElementValueRepresentation:"0008030A",PrivateDataElementNumberOfItems:"0008030B",PrivateDataElementName:"0008030C",PrivateDataElementKeyword:"0008030D",PrivateDataElementDescription:"0008030E",PrivateDataElementEncoding:"0008030F",PrivateDataElementDefinitionSequence:"00080310",NetworkID:"00081000",StationName:"00081010",StudyDescription:"00081030",ProcedureCodeSequence:"00081032",SeriesDescription:"0008103E",SeriesDescriptionCodeSequence:"0008103F",InstitutionalDepartmentName:"00081040",PhysiciansOfRecord:"00081048",PhysiciansOfRecordIdentificationSequence:"00081049",PerformingPhysicianName:"00081050",PerformingPhysicianIdentificationSequence:"00081052",NameOfPhysiciansReadingStudy:"00081060",PhysiciansReadingStudyIdentificationSequence:"00081062",OperatorsName:"00081070",OperatorIdentificationSequence:"00081072",AdmittingDiagnosesDescription:"00081080",AdmittingDiagnosesCodeSequence:"00081084",ManufacturerModelName:"00081090",ReferencedResultsSequence:"00081100",ReferencedStudySequence:"00081110",ReferencedPerformedProcedureStepSequence:"00081111",ReferencedSeriesSequence:"00081115",ReferencedPatientSequence:"00081120",ReferencedVisitSequence:"00081125",ReferencedOverlaySequence:"00081130",ReferencedStereometricInstanceSequence:"00081134",ReferencedWaveformSequence:"0008113A",ReferencedImageSequence:"00081140",ReferencedCurveSequence:"00081145",ReferencedInstanceSequence:"0008114A",ReferencedRealWorldValueMappingInstanceSequence:"0008114B",ReferencedSOPClassUID:"00081150",ReferencedSOPInstanceUID:"00081155",DefinitionSourceSequence:"00081156",SOPClassesSupported:"0008115A",ReferencedFrameNumber:"00081160",SimpleFrameList:"00081161",CalculatedFrameList:"00081162",TimeRange:"00081163",FrameExtractionSequence:"00081164",MultiFrameSourceSOPInstanceUID:"00081167",RetrieveURL:"00081190",TransactionUID:"00081195",WarningReason:"00081196",FailureReason:"00081197",FailedSOPSequence:"00081198",ReferencedSOPSequence:"00081199",OtherFailuresSequence:"0008119A",StudiesContainingOtherReferencedInstancesSequence:"00081200",RelatedSeriesSequence:"00081250",LossyImageCompressionRetired:"00082110",DerivationDescription:"00082111",SourceImageSequence:"00082112",StageName:"00082120",StageNumber:"00082122",NumberOfStages:"00082124",ViewName:"00082127",ViewNumber:"00082128",NumberOfEventTimers:"00082129",NumberOfViewsInStage:"0008212A",EventElapsedTimes:"00082130",EventTimerNames:"00082132",EventTimerSequence:"00082133",EventTimeOffset:"00082134",EventCodeSequence:"00082135",StartTrim:"00082142",StopTrim:"00082143",RecommendedDisplayFrameRate:"00082144",TransducerPosition:"00082200",TransducerOrientation:"00082204",AnatomicStructure:"00082208",AnatomicRegionSequence:"00082218",AnatomicRegionModifierSequence:"00082220",PrimaryAnatomicStructureSequence:"00082228",AnatomicStructureSpaceOrRegionSequence:"00082229",PrimaryAnatomicStructureModifierSequence:"00082230",TransducerPositionSequence:"00082240",TransducerPositionModifierSequence:"00082242",TransducerOrientationSequence:"00082244",TransducerOrientationModifierSequence:"00082246",AnatomicStructureSpaceOrRegionCodeSequenceTrial:"00082251",AnatomicPortalOfEntranceCodeSequenceTrial:"00082253",AnatomicApproachDirectionCodeSequenceTrial:"00082255",AnatomicPerspectiveDescriptionTrial:"00082256",AnatomicPerspectiveCodeSequenceTrial:"00082257",AnatomicLocationOfExaminingInstrumentDescriptionTrial:"00082258",AnatomicLocationOfExaminingInstrumentCodeSequenceTrial:"00082259",AnatomicStructureSpaceOrRegionModifierCodeSequenceTrial:"0008225A",OnAxisBackgroundAnatomicStructureCodeSequenceTrial:"0008225C",AlternateRepresentationSequence:"00083001",IrradiationEventUID:"00083010",SourceIrradiationEventSequence:"00083011",RadiopharmaceuticalAdministrationEventUID:"00083012",IdentifyingComments:"00084000",FrameType:"00089007",ReferencedImageEvidenceSequence:"00089092",ReferencedRawDataSequence:"00089121",CreatorVersionUID:"00089123",DerivationImageSequence:"00089124",SourceImageEvidenceSequence:"00089154",PixelPresentation:"00089205",VolumetricProperties:"00089206",VolumeBasedCalculationTechnique:"00089207",ComplexImageComponent:"00089208",AcquisitionContrast:"00089209",DerivationCodeSequence:"00089215",ReferencedPresentationStateSequence:"00089237",ReferencedOtherPlaneSequence:"00089410",FrameDisplaySequence:"00089458",RecommendedDisplayFrameRateInFloat:"00089459",SkipFrameRangeFlag:"00089460",PatientName:"00100010",PatientID:"00100020",IssuerOfPatientID:"00100021",TypeOfPatientID:"00100022",IssuerOfPatientIDQualifiersSequence:"00100024",SourcePatientGroupIdentificationSequence:"00100026",GroupOfPatientsIdentificationSequence:"00100027",SubjectRelativePositionInImage:"00100028",PatientBirthDate:"00100030",PatientBirthTime:"00100032",PatientBirthDateInAlternativeCalendar:"00100033",PatientDeathDateInAlternativeCalendar:"00100034",PatientAlternativeCalendar:"00100035",PatientSex:"00100040",PatientInsurancePlanCodeSequence:"00100050",PatientPrimaryLanguageCodeSequence:"00100101",PatientPrimaryLanguageModifierCodeSequence:"00100102",QualityControlSubject:"00100200",QualityControlSubjectTypeCodeSequence:"00100201",StrainDescription:"00100212",StrainNomenclature:"00100213",StrainStockNumber:"00100214",StrainSourceRegistryCodeSequence:"00100215",StrainStockSequence:"00100216",StrainSource:"00100217",StrainAdditionalInformation:"00100218",StrainCodeSequence:"00100219",GeneticModificationsSequence:"00100221",GeneticModificationsDescription:"00100222",GeneticModificationsNomenclature:"00100223",GeneticModificationsCodeSequence:"00100229",OtherPatientIDs:"00101000",OtherPatientNames:"00101001",OtherPatientIDsSequence:"00101002",PatientBirthName:"00101005",PatientAge:"00101010",PatientSize:"00101020",PatientSizeCodeSequence:"00101021",PatientBodyMassIndex:"00101022",MeasuredAPDimension:"00101023",MeasuredLateralDimension:"00101024",PatientWeight:"00101030",PatientAddress:"00101040",InsurancePlanIdentification:"00101050",PatientMotherBirthName:"00101060",MilitaryRank:"00101080",BranchOfService:"00101081",MedicalRecordLocator:"00101090",ReferencedPatientPhotoSequence:"00101100",MedicalAlerts:"00102000",Allergies:"00102110",CountryOfResidence:"00102150",RegionOfResidence:"00102152",PatientTelephoneNumbers:"00102154",PatientTelecomInformation:"00102155",EthnicGroup:"00102160",Occupation:"00102180",SmokingStatus:"001021A0",AdditionalPatientHistory:"001021B0",PregnancyStatus:"001021C0",LastMenstrualDate:"001021D0",PatientReligiousPreference:"001021F0",PatientSpeciesDescription:"00102201",PatientSpeciesCodeSequence:"00102202",PatientSexNeutered:"00102203",AnatomicalOrientationType:"00102210",PatientBreedDescription:"00102292",PatientBreedCodeSequence:"00102293",BreedRegistrationSequence:"00102294",BreedRegistrationNumber:"00102295",BreedRegistryCodeSequence:"00102296",ResponsiblePerson:"00102297",ResponsiblePersonRole:"00102298",ResponsibleOrganization:"00102299",PatientComments:"00104000",ExaminedBodyThickness:"00109431",ClinicalTrialSponsorName:"00120010",ClinicalTrialProtocolID:"00120020",ClinicalTrialProtocolName:"00120021",ClinicalTrialSiteID:"00120030",ClinicalTrialSiteName:"00120031",ClinicalTrialSubjectID:"00120040",ClinicalTrialSubjectReadingID:"00120042",ClinicalTrialTimePointID:"00120050",ClinicalTrialTimePointDescription:"00120051",LongitudinalTemporalOffsetFromEvent:"00120052",LongitudinalTemporalEventType:"00120053",ClinicalTrialCoordinatingCenterName:"00120060",PatientIdentityRemoved:"00120062",DeidentificationMethod:"00120063",DeidentificationMethodCodeSequence:"00120064",ClinicalTrialSeriesID:"00120071",ClinicalTrialSeriesDescription:"00120072",ClinicalTrialProtocolEthicsCommitteeName:"00120081",ClinicalTrialProtocolEthicsCommitteeApprovalNumber:"00120082",ConsentForClinicalTrialUseSequence:"00120083",DistributionType:"00120084",ConsentForDistributionFlag:"00120085",EthicsCommitteeApprovalEffectivenessStartDate:"00120086",EthicsCommitteeApprovalEffectivenessEndDate:"00120087",CADFileFormat:"00140023",ComponentReferenceSystem:"00140024",ComponentManufacturingProcedure:"00140025",ComponentManufacturer:"00140028",MaterialThickness:"00140030",MaterialPipeDiameter:"00140032",MaterialIsolationDiameter:"00140034",MaterialGrade:"00140042",MaterialPropertiesDescription:"00140044",MaterialPropertiesFileFormatRetired:"00140045",MaterialNotes:"00140046",ComponentShape:"00140050",CurvatureType:"00140052",OuterDiameter:"00140054",InnerDiameter:"00140056",ComponentWelderIDs:"00140100",SecondaryApprovalStatus:"00140101",SecondaryReviewDate:"00140102",SecondaryReviewTime:"00140103",SecondaryReviewerName:"00140104",RepairID:"00140105",MultipleComponentApprovalSequence:"00140106",OtherApprovalStatus:"00140107",OtherSecondaryApprovalStatus:"00140108",ActualEnvironmentalConditions:"00141010",ExpiryDate:"00141020",EnvironmentalConditions:"00141040",EvaluatorSequence:"00142002",EvaluatorNumber:"00142004",EvaluatorName:"00142006",EvaluationAttempt:"00142008",IndicationSequence:"00142012",IndicationNumber:"00142014",IndicationLabel:"00142016",IndicationDescription:"00142018",IndicationType:"0014201A",IndicationDisposition:"0014201C",IndicationROISequence:"0014201E",IndicationPhysicalPropertySequence:"00142030",PropertyLabel:"00142032",CoordinateSystemNumberOfAxes:"00142202",CoordinateSystemAxesSequence:"00142204",CoordinateSystemAxisDescription:"00142206",CoordinateSystemDataSetMapping:"00142208",CoordinateSystemAxisNumber:"0014220A",CoordinateSystemAxisType:"0014220C",CoordinateSystemAxisUnits:"0014220E",CoordinateSystemAxisValues:"00142210",CoordinateSystemTransformSequence:"00142220",TransformDescription:"00142222",TransformNumberOfAxes:"00142224",TransformOrderOfAxes:"00142226",TransformedAxisUnits:"00142228",CoordinateSystemTransformRotationAndScaleMatrix:"0014222A",CoordinateSystemTransformTranslationMatrix:"0014222C",InternalDetectorFrameTime:"00143011",NumberOfFramesIntegrated:"00143012",DetectorTemperatureSequence:"00143020",SensorName:"00143022",HorizontalOffsetOfSensor:"00143024",VerticalOffsetOfSensor:"00143026",SensorTemperature:"00143028",DarkCurrentSequence:"00143040",DarkCurrentCounts:"00143050",GainCorrectionReferenceSequence:"00143060",AirCounts:"00143070",KVUsedInGainCalibration:"00143071",MAUsedInGainCalibration:"00143072",NumberOfFramesUsedForIntegration:"00143073",FilterMaterialUsedInGainCalibration:"00143074",FilterThicknessUsedInGainCalibration:"00143075",DateOfGainCalibration:"00143076",TimeOfGainCalibration:"00143077",BadPixelImage:"00143080",CalibrationNotes:"00143099",PulserEquipmentSequence:"00144002",PulserType:"00144004",PulserNotes:"00144006",ReceiverEquipmentSequence:"00144008",AmplifierType:"0014400A",ReceiverNotes:"0014400C",PreAmplifierEquipmentSequence:"0014400E",PreAmplifierNotes:"0014400F",TransmitTransducerSequence:"00144010",ReceiveTransducerSequence:"00144011",NumberOfElements:"00144012",ElementShape:"00144013",ElementDimensionA:"00144014",ElementDimensionB:"00144015",ElementPitchA:"00144016",MeasuredBeamDimensionA:"00144017",MeasuredBeamDimensionB:"00144018",LocationOfMeasuredBeamDiameter:"00144019",NominalFrequency:"0014401A",MeasuredCenterFrequency:"0014401B",MeasuredBandwidth:"0014401C",ElementPitchB:"0014401D",PulserSettingsSequence:"00144020",PulseWidth:"00144022",ExcitationFrequency:"00144024",ModulationType:"00144026",Damping:"00144028",ReceiverSettingsSequence:"00144030",AcquiredSoundpathLength:"00144031",AcquisitionCompressionType:"00144032",AcquisitionSampleSize:"00144033",RectifierSmoothing:"00144034",DACSequence:"00144035",DACType:"00144036",DACGainPoints:"00144038",DACTimePoints:"0014403A",DACAmplitude:"0014403C",PreAmplifierSettingsSequence:"00144040",TransmitTransducerSettingsSequence:"00144050",ReceiveTransducerSettingsSequence:"00144051",IncidentAngle:"00144052",CouplingTechnique:"00144054",CouplingMedium:"00144056",CouplingVelocity:"00144057",ProbeCenterLocationX:"00144058",ProbeCenterLocationZ:"00144059",SoundPathLength:"0014405A",DelayLawIdentifier:"0014405C",GateSettingsSequence:"00144060",GateThreshold:"00144062",VelocityOfSound:"00144064",CalibrationSettingsSequence:"00144070",CalibrationProcedure:"00144072",ProcedureVersion:"00144074",ProcedureCreationDate:"00144076",ProcedureExpirationDate:"00144078",ProcedureLastModifiedDate:"0014407A",CalibrationTime:"0014407C",CalibrationDate:"0014407E",ProbeDriveEquipmentSequence:"00144080",DriveType:"00144081",ProbeDriveNotes:"00144082",DriveProbeSequence:"00144083",ProbeInductance:"00144084",ProbeResistance:"00144085",ReceiveProbeSequence:"00144086",ProbeDriveSettingsSequence:"00144087",BridgeResistors:"00144088",ProbeOrientationAngle:"00144089",UserSelectedGainY:"0014408B",UserSelectedPhase:"0014408C",UserSelectedOffsetX:"0014408D",UserSelectedOffsetY:"0014408E",ChannelSettingsSequence:"00144091",ChannelThreshold:"00144092",ScannerSettingsSequence:"0014409A",ScanProcedure:"0014409B",TranslationRateX:"0014409C",TranslationRateY:"0014409D",ChannelOverlap:"0014409F",ImageQualityIndicatorType:"001440A0",ImageQualityIndicatorMaterial:"001440A1",ImageQualityIndicatorSize:"001440A2",LINACEnergy:"00145002",LINACOutput:"00145004",ActiveAperture:"00145100",TotalAperture:"00145101",ApertureElevation:"00145102",MainLobeAngle:"00145103",MainRoofAngle:"00145104",ConnectorType:"00145105",WedgeModelNumber:"00145106",WedgeAngleFloat:"00145107",WedgeRoofAngle:"00145108","00145109":"WedgeElement1Position",WedgeMaterialVelocity:"0014510A",WedgeMaterial:"0014510B",WedgeOffsetZ:"0014510C",WedgeOriginOffsetX:"0014510D",WedgeTimeDelay:"0014510E",WedgeName:"0014510F",WedgeManufacturerName:"00145110",WedgeDescription:"00145111",NominalBeamAngle:"00145112",WedgeOffsetX:"00145113",WedgeOffsetY:"00145114",WedgeTotalLength:"00145115",WedgeInContactLength:"00145116",WedgeFrontGap:"00145117",WedgeTotalHeight:"00145118",WedgeFrontHeight:"00145119",WedgeRearHeight:"0014511A",WedgeTotalWidth:"0014511B",WedgeInContactWidth:"0014511C",WedgeChamferHeight:"0014511D",WedgeCurve:"0014511E",RadiusAlongWedge:"0014511F",ContrastBolusAgent:"00180010",ContrastBolusAgentSequence:"00180012","00180013":"ContrastBolusT1Relaxivity",ContrastBolusAdministrationRouteSequence:"00180014",BodyPartExamined:"00180015",ScanningSequence:"00180020",SequenceVariant:"00180021",ScanOptions:"00180022",MRAcquisitionType:"00180023",SequenceName:"00180024",AngioFlag:"00180025",InterventionDrugInformationSequence:"00180026",InterventionDrugStopTime:"00180027",InterventionDrugDose:"00180028",InterventionDrugCodeSequence:"00180029",AdditionalDrugSequence:"0018002A",Radionuclide:"00180030",Radiopharmaceutical:"00180031",EnergyWindowCenterline:"00180032",EnergyWindowTotalWidth:"00180033",InterventionDrugName:"00180034",InterventionDrugStartTime:"00180035",InterventionSequence:"00180036",TherapyType:"00180037",InterventionStatus:"00180038",TherapyDescription:"00180039",InterventionDescription:"0018003A",CineRate:"00180040",InitialCineRunState:"00180042",SliceThickness:"00180050",KVP:"00180060","":"00180061",CountsAccumulated:"00180070",AcquisitionTerminationCondition:"00180071",EffectiveDuration:"00180072",AcquisitionStartCondition:"00180073",AcquisitionStartConditionData:"00180074",AcquisitionTerminationConditionData:"00180075",RepetitionTime:"00180080",EchoTime:"00180081",InversionTime:"00180082",NumberOfAverages:"00180083",ImagingFrequency:"00180084",ImagedNucleus:"00180085",EchoNumbers:"00180086",MagneticFieldStrength:"00180087",SpacingBetweenSlices:"00180088",NumberOfPhaseEncodingSteps:"00180089",DataCollectionDiameter:"00180090",EchoTrainLength:"00180091",PercentSampling:"00180093",PercentPhaseFieldOfView:"00180094",PixelBandwidth:"00180095",DeviceSerialNumber:"00181000",DeviceUID:"00181002",DeviceID:"00181003",PlateID:"00181004",GeneratorID:"00181005",GridID:"00181006",CassetteID:"00181007",GantryID:"00181008",UniqueDeviceIdentifier:"00181009",UDISequence:"0018100A",SecondaryCaptureDeviceID:"00181010",HardcopyCreationDeviceID:"00181011",DateOfSecondaryCapture:"00181012",TimeOfSecondaryCapture:"00181014",SecondaryCaptureDeviceManufacturer:"00181016",HardcopyDeviceManufacturer:"00181017",SecondaryCaptureDeviceManufacturerModelName:"00181018",SecondaryCaptureDeviceSoftwareVersions:"00181019",HardcopyDeviceSoftwareVersion:"0018101A",HardcopyDeviceManufacturerModelName:"0018101B",SoftwareVersions:"00181020",VideoImageFormatAcquired:"00181022",DigitalImageFormatAcquired:"00181023",ProtocolName:"00181030",ContrastBolusRoute:"00181040",ContrastBolusVolume:"00181041",ContrastBolusStartTime:"00181042",ContrastBolusStopTime:"00181043",ContrastBolusTotalDose:"00181044",SyringeCounts:"00181045",ContrastFlowRate:"00181046",ContrastFlowDuration:"00181047",ContrastBolusIngredient:"00181048",ContrastBolusIngredientConcentration:"00181049",SpatialResolution:"00181050",TriggerTime:"00181060",TriggerSourceOrType:"00181061",NominalInterval:"00181062",FrameTime:"00181063",CardiacFramingType:"00181064",FrameTimeVector:"00181065",FrameDelay:"00181066",ImageTriggerDelay:"00181067",MultiplexGroupTimeOffset:"00181068",TriggerTimeOffset:"00181069",SynchronizationTrigger:"0018106A",SynchronizationChannel:"0018106C",TriggerSamplePosition:"0018106E",RadiopharmaceuticalRoute:"00181070",RadiopharmaceuticalVolume:"00181071",RadiopharmaceuticalStartTime:"00181072",RadiopharmaceuticalStopTime:"00181073",RadionuclideTotalDose:"00181074",RadionuclideHalfLife:"00181075",RadionuclidePositronFraction:"00181076",RadiopharmaceuticalSpecificActivity:"00181077",RadiopharmaceuticalStartDateTime:"00181078",RadiopharmaceuticalStopDateTime:"00181079",BeatRejectionFlag:"00181080",LowRRValue:"00181081",HighRRValue:"00181082",IntervalsAcquired:"00181083",IntervalsRejected:"00181084",PVCRejection:"00181085",SkipBeats:"00181086",HeartRate:"00181088",CardiacNumberOfImages:"00181090",TriggerWindow:"00181094",ReconstructionDiameter:"00181100",DistanceSourceToDetector:"00181110",DistanceSourceToPatient:"00181111",EstimatedRadiographicMagnificationFactor:"00181114",GantryDetectorTilt:"00181120",GantryDetectorSlew:"00181121",TableHeight:"00181130",TableTraverse:"00181131",TableMotion:"00181134",TableVerticalIncrement:"00181135",TableLateralIncrement:"00181136",TableLongitudinalIncrement:"00181137",TableAngle:"00181138",TableType:"0018113A",RotationDirection:"00181140",AngularPosition:"00181141",RadialPosition:"00181142",ScanArc:"00181143",AngularStep:"00181144",CenterOfRotationOffset:"00181145",RotationOffset:"00181146",FieldOfViewShape:"00181147",FieldOfViewDimensions:"00181149",ExposureTime:"00181150",XRayTubeCurrent:"00181151",Exposure:"00181152",ExposureInuAs:"00181153",AveragePulseWidth:"00181154",RadiationSetting:"00181155",RectificationType:"00181156",RadiationMode:"0018115A",ImageAndFluoroscopyAreaDoseProduct:"0018115E",FilterType:"00181160",TypeOfFilters:"00181161",IntensifierSize:"00181162",ImagerPixelSpacing:"00181164",Grid:"00181166",GeneratorPower:"00181170",CollimatorGridName:"00181180",CollimatorType:"00181181",FocalDistance:"00181182",XFocusCenter:"00181183",YFocusCenter:"00181184",FocalSpots:"00181190",AnodeTargetMaterial:"00181191",BodyPartThickness:"001811A0",CompressionForce:"001811A2",CompressionPressure:"001811A3",PaddleDescription:"001811A4",CompressionContactArea:"001811A5",DateOfLastCalibration:"00181200",TimeOfLastCalibration:"00181201",DateTimeOfLastCalibration:"00181202",ConvolutionKernel:"00181210",UpperLowerPixelValues:"00181240",ActualFrameDuration:"00181242",CountRate:"00181243",PreferredPlaybackSequencing:"00181244",ReceiveCoilName:"00181250",TransmitCoilName:"00181251",PlateType:"00181260",PhosphorType:"00181261",WaterEquivalentDiameter:"00181271",WaterEquivalentDiameterCalculationMethodCodeSequence:"00181272",ScanVelocity:"00181300",WholeBodyTechnique:"00181301",ScanLength:"00181302",AcquisitionMatrix:"00181310",InPlanePhaseEncodingDirection:"00181312",FlipAngle:"00181314",VariableFlipAngleFlag:"00181315",SAR:"00181316",dBdt:"00181318","00181320":"B1rms",AcquisitionDeviceProcessingDescription:"00181400",AcquisitionDeviceProcessingCode:"00181401",CassetteOrientation:"00181402",CassetteSize:"00181403",ExposuresOnPlate:"00181404",RelativeXRayExposure:"00181405",ExposureIndex:"00181411",TargetExposureIndex:"00181412",DeviationIndex:"00181413",ColumnAngulation:"00181450",TomoLayerHeight:"00181460",TomoAngle:"00181470",TomoTime:"00181480",TomoType:"00181490",TomoClass:"00181491",NumberOfTomosynthesisSourceImages:"00181495",PositionerMotion:"00181500",PositionerType:"00181508",PositionerPrimaryAngle:"00181510",PositionerSecondaryAngle:"00181511",PositionerPrimaryAngleIncrement:"00181520",PositionerSecondaryAngleIncrement:"00181521",DetectorPrimaryAngle:"00181530",DetectorSecondaryAngle:"00181531",ShutterShape:"00181600",ShutterLeftVerticalEdge:"00181602",ShutterRightVerticalEdge:"00181604",ShutterUpperHorizontalEdge:"00181606",ShutterLowerHorizontalEdge:"00181608",CenterOfCircularShutter:"00181610",RadiusOfCircularShutter:"00181612",VerticesOfThePolygonalShutter:"00181620",ShutterPresentationValue:"00181622",ShutterOverlayGroup:"00181623",ShutterPresentationColorCIELabValue:"00181624",CollimatorShape:"00181700",CollimatorLeftVerticalEdge:"00181702",CollimatorRightVerticalEdge:"00181704",CollimatorUpperHorizontalEdge:"00181706",CollimatorLowerHorizontalEdge:"00181708",CenterOfCircularCollimator:"00181710",RadiusOfCircularCollimator:"00181712",VerticesOfThePolygonalCollimator:"00181720",AcquisitionTimeSynchronized:"00181800",TimeSource:"00181801",TimeDistributionProtocol:"00181802",NTPSourceAddress:"00181803",PageNumberVector:"00182001",FrameLabelVector:"00182002",FramePrimaryAngleVector:"00182003",FrameSecondaryAngleVector:"00182004",SliceLocationVector:"00182005",DisplayWindowLabelVector:"00182006",NominalScannedPixelSpacing:"00182010",DigitizingDeviceTransportDirection:"00182020",RotationOfScannedFilm:"00182030",BiopsyTargetSequence:"00182041",TargetUID:"00182042",LocalizingCursorPosition:"00182043",CalculatedTargetPosition:"00182044",TargetLabel:"00182045",DisplayedZValue:"00182046",IVUSAcquisition:"00183100",IVUSPullbackRate:"00183101",IVUSGatedRate:"00183102",IVUSPullbackStartFrameNumber:"00183103",IVUSPullbackStopFrameNumber:"00183104",LesionNumber:"00183105",AcquisitionComments:"00184000",OutputPower:"00185000",TransducerData:"00185010",FocusDepth:"00185012",ProcessingFunction:"00185020",PostprocessingFunction:"00185021",MechanicalIndex:"00185022",BoneThermalIndex:"00185024",CranialThermalIndex:"00185026",SoftTissueThermalIndex:"00185027",SoftTissueFocusThermalIndex:"00185028",SoftTissueSurfaceThermalIndex:"00185029",DynamicRange:"00185030",TotalGain:"00185040",DepthOfScanField:"00185050",PatientPosition:"00185100",ViewPosition:"00185101",ProjectionEponymousNameCodeSequence:"00185104",ImageTransformationMatrix:"00185210",ImageTranslationVector:"00185212",Sensitivity:"00186000",SequenceOfUltrasoundRegions:"00186011",RegionSpatialFormat:"00186012",RegionDataType:"00186014",RegionFlags:"00186016","00186018":"RegionLocationMinX0","0018601A":"RegionLocationMinY0","0018601C":"RegionLocationMaxX1","0018601E":"RegionLocationMaxY1","00186020":"ReferencePixelX0","00186022":"ReferencePixelY0",PhysicalUnitsXDirection:"00186024",PhysicalUnitsYDirection:"00186026",ReferencePixelPhysicalValueX:"00186028",ReferencePixelPhysicalValueY:"0018602A",PhysicalDeltaX:"0018602C",PhysicalDeltaY:"0018602E",TransducerFrequency:"00186030",TransducerType:"00186031",PulseRepetitionFrequency:"00186032",DopplerCorrectionAngle:"00186034",SteeringAngle:"00186036",DopplerSampleVolumeXPositionRetired:"00186038",DopplerSampleVolumeXPosition:"00186039",DopplerSampleVolumeYPositionRetired:"0018603A",DopplerSampleVolumeYPosition:"0018603B","0018603C":"TMLinePositionX0Retired","0018603D":"TMLinePositionX0","0018603E":"TMLinePositionY0Retired","0018603F":"TMLinePositionY0","00186040":"TMLinePositionX1Retired","00186041":"TMLinePositionX1","00186042":"TMLinePositionY1Retired","00186043":"TMLinePositionY1",PixelComponentOrganization:"00186044",PixelComponentMask:"00186046",PixelComponentRangeStart:"00186048",PixelComponentRangeStop:"0018604A",PixelComponentPhysicalUnits:"0018604C",PixelComponentDataType:"0018604E",NumberOfTableBreakPoints:"00186050",TableOfXBreakPoints:"00186052",TableOfYBreakPoints:"00186054",NumberOfTableEntries:"00186056",TableOfPixelValues:"00186058",TableOfParameterValues:"0018605A",RWaveTimeVector:"00186060",DetectorConditionsNominalFlag:"00187000",DetectorTemperature:"00187001",DetectorType:"00187004",DetectorConfiguration:"00187005",DetectorDescription:"00187006",DetectorMode:"00187008",DetectorID:"0018700A",DateOfLastDetectorCalibration:"0018700C",TimeOfLastDetectorCalibration:"0018700E",ExposuresOnDetectorSinceLastCalibration:"00187010",ExposuresOnDetectorSinceManufactured:"00187011",DetectorTimeSinceLastExposure:"00187012",DetectorActiveTime:"00187014",DetectorActivationOffsetFromExposure:"00187016",DetectorBinning:"0018701A",DetectorElementPhysicalSize:"00187020",DetectorElementSpacing:"00187022",DetectorActiveShape:"00187024",DetectorActiveDimensions:"00187026",DetectorActiveOrigin:"00187028",DetectorManufacturerName:"0018702A",DetectorManufacturerModelName:"0018702B",FieldOfViewOrigin:"00187030",FieldOfViewRotation:"00187032",FieldOfViewHorizontalFlip:"00187034",PixelDataAreaOriginRelativeToFOV:"00187036",PixelDataAreaRotationAngleRelativeToFOV:"00187038",GridAbsorbingMaterial:"00187040",GridSpacingMaterial:"00187041",GridThickness:"00187042",GridPitch:"00187044",GridAspectRatio:"00187046",GridPeriod:"00187048",GridFocalDistance:"0018704C",FilterMaterial:"00187050",FilterThicknessMinimum:"00187052",FilterThicknessMaximum:"00187054",FilterBeamPathLengthMinimum:"00187056",FilterBeamPathLengthMaximum:"00187058",ExposureControlMode:"00187060",ExposureControlModeDescription:"00187062",ExposureStatus:"00187064",PhototimerSetting:"00187065",ExposureTimeInuS:"00188150",XRayTubeCurrentInuA:"00188151",ContentQualification:"00189004",PulseSequenceName:"00189005",MRImagingModifierSequence:"00189006",EchoPulseSequence:"00189008",InversionRecovery:"00189009",FlowCompensation:"00189010",MultipleSpinEcho:"00189011",MultiPlanarExcitation:"00189012",PhaseContrast:"00189014",TimeOfFlightContrast:"00189015",Spoiling:"00189016",SteadyStatePulseSequence:"00189017",EchoPlanarPulseSequence:"00189018",TagAngleFirstAxis:"00189019",MagnetizationTransfer:"00189020","00189021":"T2Preparation",BloodSignalNulling:"00189022",SaturationRecovery:"00189024",SpectrallySelectedSuppression:"00189025",SpectrallySelectedExcitation:"00189026",SpatialPresaturation:"00189027",Tagging:"00189028",OversamplingPhase:"00189029",TagSpacingFirstDimension:"00189030",GeometryOfKSpaceTraversal:"00189032",SegmentedKSpaceTraversal:"00189033",RectilinearPhaseEncodeReordering:"00189034",TagThickness:"00189035",PartialFourierDirection:"00189036",CardiacSynchronizationTechnique:"00189037",ReceiveCoilManufacturerName:"00189041",MRReceiveCoilSequence:"00189042",ReceiveCoilType:"00189043",QuadratureReceiveCoil:"00189044",MultiCoilDefinitionSequence:"00189045",MultiCoilConfiguration:"00189046",MultiCoilElementName:"00189047",MultiCoilElementUsed:"00189048",MRTransmitCoilSequence:"00189049",TransmitCoilManufacturerName:"00189050",TransmitCoilType:"00189051",SpectralWidth:"00189052",ChemicalShiftReference:"00189053",VolumeLocalizationTechnique:"00189054",MRAcquisitionFrequencyEncodingSteps:"00189058",Decoupling:"00189059",DecoupledNucleus:"00189060",DecouplingFrequency:"00189061",DecouplingMethod:"00189062",DecouplingChemicalShiftReference:"00189063",KSpaceFiltering:"00189064",TimeDomainFiltering:"00189065",NumberOfZeroFills:"00189066",BaselineCorrection:"00189067",ParallelReductionFactorInPlane:"00189069",CardiacRRIntervalSpecified:"00189070",AcquisitionDuration:"00189073",FrameAcquisitionDateTime:"00189074",DiffusionDirectionality:"00189075",DiffusionGradientDirectionSequence:"00189076",ParallelAcquisition:"00189077",ParallelAcquisitionTechnique:"00189078",InversionTimes:"00189079",MetaboliteMapDescription:"00189080",PartialFourier:"00189081",EffectiveEchoTime:"00189082",MetaboliteMapCodeSequence:"00189083",ChemicalShiftSequence:"00189084",CardiacSignalSource:"00189085",DiffusionBValue:"00189087",DiffusionGradientOrientation:"00189089",VelocityEncodingDirection:"00189090",VelocityEncodingMinimumValue:"00189091",VelocityEncodingAcquisitionSequence:"00189092",NumberOfKSpaceTrajectories:"00189093",CoverageOfKSpace:"00189094",SpectroscopyAcquisitionPhaseRows:"00189095",ParallelReductionFactorInPlaneRetired:"00189096",TransmitterFrequency:"00189098",ResonantNucleus:"00189100",FrequencyCorrection:"00189101",MRSpectroscopyFOVGeometrySequence:"00189103",SlabThickness:"00189104",SlabOrientation:"00189105",MidSlabPosition:"00189106",MRSpatialSaturationSequence:"00189107",MRTimingAndRelatedParametersSequence:"00189112",MREchoSequence:"00189114",MRModifierSequence:"00189115",MRDiffusionSequence:"00189117",CardiacSynchronizationSequence:"00189118",MRAveragesSequence:"00189119",MRFOVGeometrySequence:"00189125",VolumeLocalizationSequence:"00189126",SpectroscopyAcquisitionDataColumns:"00189127",DiffusionAnisotropyType:"00189147",FrameReferenceDateTime:"00189151",MRMetaboliteMapSequence:"00189152",ParallelReductionFactorOutOfPlane:"00189155",SpectroscopyAcquisitionOutOfPlanePhaseSteps:"00189159",BulkMotionStatus:"00189166",ParallelReductionFactorSecondInPlane:"00189168",CardiacBeatRejectionTechnique:"00189169",RespiratoryMotionCompensationTechnique:"00189170",RespiratorySignalSource:"00189171",BulkMotionCompensationTechnique:"00189172",BulkMotionSignalSource:"00189173",ApplicableSafetyStandardAgency:"00189174",ApplicableSafetyStandardDescription:"00189175",OperatingModeSequence:"00189176",OperatingModeType:"00189177",OperatingMode:"00189178",SpecificAbsorptionRateDefinition:"00189179",GradientOutputType:"00189180",SpecificAbsorptionRateValue:"00189181",GradientOutput:"00189182",FlowCompensationDirection:"00189183",TaggingDelay:"00189184",RespiratoryMotionCompensationTechniqueDescription:"00189185",RespiratorySignalSourceID:"00189186",ChemicalShiftMinimumIntegrationLimitInHz:"00189195",ChemicalShiftMaximumIntegrationLimitInHz:"00189196",MRVelocityEncodingSequence:"00189197",FirstOrderPhaseCorrection:"00189198",WaterReferencedPhaseCorrection:"00189199",MRSpectroscopyAcquisitionType:"00189200",RespiratoryCyclePosition:"00189214",VelocityEncodingMaximumValue:"00189217",TagSpacingSecondDimension:"00189218",TagAngleSecondAxis:"00189219",FrameAcquisitionDuration:"00189220",MRImageFrameTypeSequence:"00189226",MRSpectroscopyFrameTypeSequence:"00189227",MRAcquisitionPhaseEncodingStepsInPlane:"00189231",MRAcquisitionPhaseEncodingStepsOutOfPlane:"00189232",SpectroscopyAcquisitionPhaseColumns:"00189234",CardiacCyclePosition:"00189236",SpecificAbsorptionRateSequence:"00189239",RFEchoTrainLength:"00189240",GradientEchoTrainLength:"00189241",ArterialSpinLabelingContrast:"00189250",MRArterialSpinLabelingSequence:"00189251",ASLTechniqueDescription:"00189252",ASLSlabNumber:"00189253",ASLSlabThickness:"00189254",ASLSlabOrientation:"00189255",ASLMidSlabPosition:"00189256",ASLContext:"00189257",ASLPulseTrainDuration:"00189258",ASLCrusherFlag:"00189259",ASLCrusherFlowLimit:"0018925A",ASLCrusherDescription:"0018925B",ASLBolusCutoffFlag:"0018925C",ASLBolusCutoffTimingSequence:"0018925D",ASLBolusCutoffTechnique:"0018925E",ASLBolusCutoffDelayTime:"0018925F",ASLSlabSequence:"00189260",ChemicalShiftMinimumIntegrationLimitInppm:"00189295",ChemicalShiftMaximumIntegrationLimitInppm:"00189296",WaterReferenceAcquisition:"00189297",EchoPeakPosition:"00189298",CTAcquisitionTypeSequence:"00189301",AcquisitionType:"00189302",TubeAngle:"00189303",CTAcquisitionDetailsSequence:"00189304",RevolutionTime:"00189305",SingleCollimationWidth:"00189306",TotalCollimationWidth:"00189307",CTTableDynamicsSequence:"00189308",TableSpeed:"00189309",TableFeedPerRotation:"00189310",SpiralPitchFactor:"00189311",CTGeometrySequence:"00189312",DataCollectionCenterPatient:"00189313",CTReconstructionSequence:"00189314",ReconstructionAlgorithm:"00189315",ConvolutionKernelGroup:"00189316",ReconstructionFieldOfView:"00189317",ReconstructionTargetCenterPatient:"00189318",ReconstructionAngle:"00189319",ImageFilter:"00189320",CTExposureSequence:"00189321",ReconstructionPixelSpacing:"00189322",ExposureModulationType:"00189323",EstimatedDoseSaving:"00189324",CTXRayDetailsSequence:"00189325",CTPositionSequence:"00189326",TablePosition:"00189327",ExposureTimeInms:"00189328",CTImageFrameTypeSequence:"00189329",XRayTubeCurrentInmA:"00189330",ExposureInmAs:"00189332",ConstantVolumeFlag:"00189333",FluoroscopyFlag:"00189334",DistanceSourceToDataCollectionCenter:"00189335",ContrastBolusAgentNumber:"00189337",ContrastBolusIngredientCodeSequence:"00189338",ContrastAdministrationProfileSequence:"00189340",ContrastBolusUsageSequence:"00189341",ContrastBolusAgentAdministered:"00189342",ContrastBolusAgentDetected:"00189343",ContrastBolusAgentPhase:"00189344",CTDIvol:"00189345",CTDIPhantomTypeCodeSequence:"00189346",CalciumScoringMassFactorPatient:"00189351",CalciumScoringMassFactorDevice:"00189352",EnergyWeightingFactor:"00189353",CTAdditionalXRaySourceSequence:"00189360",ProjectionPixelCalibrationSequence:"00189401",DistanceSourceToIsocenter:"00189402",DistanceObjectToTableTop:"00189403",ObjectPixelSpacingInCenterOfBeam:"00189404",PositionerPositionSequence:"00189405",TablePositionSequence:"00189406",CollimatorShapeSequence:"00189407",PlanesInAcquisition:"00189410",XAXRFFrameCharacteristicsSequence:"00189412",FrameAcquisitionSequence:"00189417",XRayReceptorType:"00189420",AcquisitionProtocolName:"00189423",AcquisitionProtocolDescription:"00189424",ContrastBolusIngredientOpaque:"00189425",DistanceReceptorPlaneToDetectorHousing:"00189426",IntensifierActiveShape:"00189427",IntensifierActiveDimensions:"00189428",PhysicalDetectorSize:"00189429",PositionOfIsocenterProjection:"00189430",FieldOfViewSequence:"00189432",FieldOfViewDescription:"00189433",ExposureControlSensingRegionsSequence:"00189434",ExposureControlSensingRegionShape:"00189435",ExposureControlSensingRegionLeftVerticalEdge:"00189436",ExposureControlSensingRegionRightVerticalEdge:"00189437",ExposureControlSensingRegionUpperHorizontalEdge:"00189438",ExposureControlSensingRegionLowerHorizontalEdge:"00189439",CenterOfCircularExposureControlSensingRegion:"00189440",RadiusOfCircularExposureControlSensingRegion:"00189441",VerticesOfThePolygonalExposureControlSensingRegion:"00189442","":"00189445",ColumnAngulationPatient:"00189447",BeamAngle:"00189449",FrameDetectorParametersSequence:"00189451",CalculatedAnatomyThickness:"00189452",CalibrationSequence:"00189455",ObjectThicknessSequence:"00189456",PlaneIdentification:"00189457",FieldOfViewDimensionsInFloat:"00189461",IsocenterReferenceSystemSequence:"00189462",PositionerIsocenterPrimaryAngle:"00189463",PositionerIsocenterSecondaryAngle:"00189464",PositionerIsocenterDetectorRotationAngle:"00189465",TableXPositionToIsocenter:"00189466",TableYPositionToIsocenter:"00189467",TableZPositionToIsocenter:"00189468",TableHorizontalRotationAngle:"00189469",TableHeadTiltAngle:"00189470",TableCradleTiltAngle:"00189471",FrameDisplayShutterSequence:"00189472",AcquiredImageAreaDoseProduct:"00189473",CArmPositionerTabletopRelationship:"00189474",XRayGeometrySequence:"00189476",IrradiationEventIdentificationSequence:"00189477","00189504":"XRay3DFrameTypeSequence",ContributingSourcesSequence:"00189506","00189507":"XRay3DAcquisitionSequence",PrimaryPositionerScanArc:"00189508",SecondaryPositionerScanArc:"00189509",PrimaryPositionerScanStartAngle:"00189510",SecondaryPositionerScanStartAngle:"00189511",PrimaryPositionerIncrement:"00189514",SecondaryPositionerIncrement:"00189515",StartAcquisitionDateTime:"00189516",EndAcquisitionDateTime:"00189517",PrimaryPositionerIncrementSign:"00189518",SecondaryPositionerIncrementSign:"00189519",ApplicationName:"00189524",ApplicationVersion:"00189525",ApplicationManufacturer:"00189526",AlgorithmType:"00189527",AlgorithmDescription:"00189528","00189530":"XRay3DReconstructionSequence",ReconstructionDescription:"00189531",PerProjectionAcquisitionSequence:"00189538",DetectorPositionSequence:"00189541",XRayAcquisitionDoseSequence:"00189542",XRaySourceIsocenterPrimaryAngle:"00189543",XRaySourceIsocenterSecondaryAngle:"00189544",BreastSupportIsocenterPrimaryAngle:"00189545",BreastSupportIsocenterSecondaryAngle:"00189546",BreastSupportXPositionToIsocenter:"00189547",BreastSupportYPositionToIsocenter:"00189548",BreastSupportZPositionToIsocenter:"00189549",DetectorIsocenterPrimaryAngle:"00189550",DetectorIsocenterSecondaryAngle:"00189551",DetectorXPositionToIsocenter:"00189552",DetectorYPositionToIsocenter:"00189553",DetectorZPositionToIsocenter:"00189554",XRayGridSequence:"00189555",XRayFilterSequence:"00189556",DetectorActiveAreaTLHCPosition:"00189557",DetectorActiveAreaOrientation:"00189558",PositionerPrimaryAngleDirection:"00189559",DiffusionBMatrixSequence:"00189601",DiffusionBValueXX:"00189602",DiffusionBValueXY:"00189603",DiffusionBValueXZ:"00189604",DiffusionBValueYY:"00189605",DiffusionBValueYZ:"00189606",DiffusionBValueZZ:"00189607",FunctionalMRSequence:"00189621",FunctionalSettlingPhaseFramesPresent:"00189622",FunctionalSyncPulse:"00189623",SettlingPhaseFrame:"00189624",DecayCorrectionDateTime:"00189701",StartDensityThreshold:"00189715",StartRelativeDensityDifferenceThreshold:"00189716",StartCardiacTriggerCountThreshold:"00189717",StartRespiratoryTriggerCountThreshold:"00189718",TerminationCountsThreshold:"00189719",TerminationDensityThreshold:"00189720",TerminationRelativeDensityThreshold:"00189721",TerminationTimeThreshold:"00189722",TerminationCardiacTriggerCountThreshold:"00189723",TerminationRespiratoryTriggerCountThreshold:"00189724",DetectorGeometry:"00189725",TransverseDetectorSeparation:"00189726",AxialDetectorDimension:"00189727",RadiopharmaceuticalAgentNumber:"00189729",PETFrameAcquisitionSequence:"00189732",PETDetectorMotionDetailsSequence:"00189733",PETTableDynamicsSequence:"00189734",PETPositionSequence:"00189735",PETFrameCorrectionFactorsSequence:"00189736",RadiopharmaceuticalUsageSequence:"00189737",AttenuationCorrectionSource:"00189738",NumberOfIterations:"00189739",NumberOfSubsets:"00189740",PETReconstructionSequence:"00189749",PETFrameTypeSequence:"00189751",TimeOfFlightInformationUsed:"00189755",ReconstructionType:"00189756",DecayCorrected:"00189758",AttenuationCorrected:"00189759",ScatterCorrected:"00189760",DeadTimeCorrected:"00189761",GantryMotionCorrected:"00189762",PatientMotionCorrected:"00189763",CountLossNormalizationCorrected:"00189764",RandomsCorrected:"00189765",NonUniformRadialSamplingCorrected:"00189766",SensitivityCalibrated:"00189767",DetectorNormalizationCorrection:"00189768",IterativeReconstructionMethod:"00189769",AttenuationCorrectionTemporalRelationship:"00189770",PatientPhysiologicalStateSequence:"00189771",PatientPhysiologicalStateCodeSequence:"00189772",DepthsOfFocus:"00189801",ExcludedIntervalsSequence:"00189803",ExclusionStartDateTime:"00189804",ExclusionDuration:"00189805",USImageDescriptionSequence:"00189806",ImageDataTypeSequence:"00189807",DataType:"00189808",TransducerScanPatternCodeSequence:"00189809",AliasedDataType:"0018980B",PositionMeasuringDeviceUsed:"0018980C",TransducerGeometryCodeSequence:"0018980D",TransducerBeamSteeringCodeSequence:"0018980E",TransducerApplicationCodeSequence:"0018980F",ZeroVelocityPixelValue:"00189810",ReferenceLocationLabel:"00189900",ReferenceLocationDescription:"00189901",ReferenceBasisCodeSequence:"00189902",ReferenceGeometryCodeSequence:"00189903",OffsetDistance:"00189904",OffsetDirection:"00189905",PotentialScheduledProtocolCodeSequence:"00189906",PotentialRequestedProcedureCodeSequence:"00189907",PotentialReasonsForProcedure:"00189908",PotentialReasonsForProcedureCodeSequence:"00189909",PotentialDiagnosticTasks:"0018990A",ContraindicationsCodeSequence:"0018990B",ReferencedDefinedProtocolSequence:"0018990C",ReferencedPerformedProtocolSequence:"0018990D",PredecessorProtocolSequence:"0018990E",ProtocolPlanningInformation:"0018990F",ProtocolDesignRationale:"00189910",PatientSpecificationSequence:"00189911",ModelSpecificationSequence:"00189912",ParametersSpecificationSequence:"00189913",InstructionSequence:"00189914",InstructionIndex:"00189915",InstructionText:"00189916",InstructionDescription:"00189917",InstructionPerformedFlag:"00189918",InstructionPerformedDateTime:"00189919",InstructionPerformanceComment:"0018991A",PatientPositioningInstructionSequence:"0018991B",PositioningMethodCodeSequence:"0018991C",PositioningLandmarkSequence:"0018991D",TargetFrameOfReferenceUID:"0018991E",AcquisitionProtocolElementSpecificationSequence:"0018991F",AcquisitionProtocolElementSequence:"00189920",ProtocolElementNumber:"00189921",ProtocolElementName:"00189922",ProtocolElementCharacteristicsSummary:"00189923",ProtocolElementPurpose:"00189924",AcquisitionMotion:"00189930",AcquisitionStartLocationSequence:"00189931",AcquisitionEndLocationSequence:"00189932",ReconstructionProtocolElementSpecificationSequence:"00189933",ReconstructionProtocolElementSequence:"00189934",StorageProtocolElementSpecificationSequence:"00189935",StorageProtocolElementSequence:"00189936",RequestedSeriesDescription:"00189937",SourceAcquisitionProtocolElementNumber:"00189938",SourceAcquisitionBeamNumber:"00189939",SourceReconstructionProtocolElementNumber:"0018993A",ReconstructionStartLocationSequence:"0018993B",ReconstructionEndLocationSequence:"0018993C",ReconstructionAlgorithmSequence:"0018993D",ReconstructionTargetCenterLocationSequence:"0018993E",ImageFilterDescription:"00189941",CTDIvolNotificationTrigger:"00189942",DLPNotificationTrigger:"00189943",AutoKVPSelectionType:"00189944",AutoKVPUpperBound:"00189945",AutoKVPLowerBound:"00189946",ProtocolDefinedPatientPosition:"00189947",ContributingEquipmentSequence:"0018A001",ContributionDateTime:"0018A002",ContributionDescription:"0018A003",StudyInstanceUID:"0020000D",SeriesInstanceUID:"0020000E",StudyID:"00200010",SeriesNumber:"00200011",AcquisitionNumber:"00200012",InstanceNumber:"00200013",IsotopeNumber:"00200014",PhaseNumber:"00200015",IntervalNumber:"00200016",TimeSlotNumber:"00200017",AngleNumber:"00200018",ItemNumber:"00200019",PatientOrientation:"00200020",OverlayNumber:"00200022",CurveNumber:"00200024",LUTNumber:"00200026",ImagePosition:"00200030",ImagePositionPatient:"00200032",ImageOrientation:"00200035",ImageOrientationPatient:"00200037",Location:"00200050",FrameOfReferenceUID:"00200052",Laterality:"00200060",ImageLaterality:"00200062",ImageGeometryType:"00200070",MaskingImage:"00200080",ReportNumber:"002000AA",TemporalPositionIdentifier:"00200100",NumberOfTemporalPositions:"00200105",TemporalResolution:"00200110",SynchronizationFrameOfReferenceUID:"00200200",SOPInstanceUIDOfConcatenationSource:"00200242",SeriesInStudy:"00201000",AcquisitionsInSeries:"00201001",ImagesInAcquisition:"00201002",ImagesInSeries:"00201003",AcquisitionsInStudy:"00201004",ImagesInStudy:"00201005",Reference:"00201020",TargetPositionReferenceIndicator:"0020103F",PositionReferenceIndicator:"00201040",SliceLocation:"00201041",OtherStudyNumbers:"00201070",NumberOfPatientRelatedStudies:"00201200",NumberOfPatientRelatedSeries:"00201202",NumberOfPatientRelatedInstances:"00201204",NumberOfStudyRelatedSeries:"00201206",NumberOfStudyRelatedInstances:"00201208",NumberOfSeriesRelatedInstances:"00201209",ModifyingDeviceID:"00203401",ModifiedImageID:"00203402",ModifiedImageDate:"00203403",ModifyingDeviceManufacturer:"00203404",ModifiedImageTime:"00203405",ModifiedImageDescription:"00203406",ImageComments:"00204000",OriginalImageIdentification:"00205000",OriginalImageIdentificationNomenclature:"00205002",StackID:"00209056",InStackPositionNumber:"00209057",FrameAnatomySequence:"00209071",FrameLaterality:"00209072",FrameContentSequence:"00209111",PlanePositionSequence:"00209113",PlaneOrientationSequence:"00209116",TemporalPositionIndex:"00209128",NominalCardiacTriggerDelayTime:"00209153",NominalCardiacTriggerTimePriorToRPeak:"00209154",ActualCardiacTriggerTimePriorToRPeak:"00209155",FrameAcquisitionNumber:"00209156",DimensionIndexValues:"00209157",FrameComments:"00209158",ConcatenationUID:"00209161",InConcatenationNumber:"00209162",InConcatenationTotalNumber:"00209163",DimensionOrganizationUID:"00209164",DimensionIndexPointer:"00209165",FunctionalGroupPointer:"00209167",UnassignedSharedConvertedAttributesSequence:"00209170",UnassignedPerFrameConvertedAttributesSequence:"00209171",ConversionSourceAttributesSequence:"00209172",DimensionIndexPrivateCreator:"00209213",DimensionOrganizationSequence:"00209221",DimensionIndexSequence:"00209222",ConcatenationFrameOffsetNumber:"00209228",FunctionalGroupPrivateCreator:"00209238",NominalPercentageOfCardiacPhase:"00209241",NominalPercentageOfRespiratoryPhase:"00209245",StartingRespiratoryAmplitude:"00209246",StartingRespiratoryPhase:"00209247",EndingRespiratoryAmplitude:"00209248",EndingRespiratoryPhase:"00209249",RespiratoryTriggerType:"00209250",RRIntervalTimeNominal:"00209251",ActualCardiacTriggerDelayTime:"00209252",RespiratorySynchronizationSequence:"00209253",RespiratoryIntervalTime:"00209254",NominalRespiratoryTriggerDelayTime:"00209255",RespiratoryTriggerDelayThreshold:"00209256",ActualRespiratoryTriggerDelayTime:"00209257",ImagePositionVolume:"00209301",ImageOrientationVolume:"00209302",UltrasoundAcquisitionGeometry:"00209307",ApexPosition:"00209308",VolumeToTransducerMappingMatrix:"00209309",VolumeToTableMappingMatrix:"0020930A",VolumeToTransducerRelationship:"0020930B",PatientFrameOfReferenceSource:"0020930C",TemporalPositionTimeOffset:"0020930D",PlanePositionVolumeSequence:"0020930E",PlaneOrientationVolumeSequence:"0020930F",TemporalPositionSequence:"00209310",DimensionOrganizationType:"00209311",VolumeFrameOfReferenceUID:"00209312",TableFrameOfReferenceUID:"00209313",DimensionDescriptionLabel:"00209421",PatientOrientationInFrameSequence:"00209450",FrameLabel:"00209453",AcquisitionIndex:"00209518",ContributingSOPInstancesReferenceSequence:"00209529",ReconstructionIndex:"00209536",LightPathFilterPassThroughWavelength:"00220001",LightPathFilterPassBand:"00220002",ImagePathFilterPassThroughWavelength:"00220003",ImagePathFilterPassBand:"00220004",PatientEyeMovementCommanded:"00220005",PatientEyeMovementCommandCodeSequence:"00220006",SphericalLensPower:"00220007",CylinderLensPower:"00220008",CylinderAxis:"00220009",EmmetropicMagnification:"0022000A",IntraOcularPressure:"0022000B",HorizontalFieldOfView:"0022000C",PupilDilated:"0022000D",DegreeOfDilation:"0022000E",StereoBaselineAngle:"00220010",StereoBaselineDisplacement:"00220011",StereoHorizontalPixelOffset:"00220012",StereoVerticalPixelOffset:"00220013",StereoRotation:"00220014",AcquisitionDeviceTypeCodeSequence:"00220015",IlluminationTypeCodeSequence:"00220016",LightPathFilterTypeStackCodeSequence:"00220017",ImagePathFilterTypeStackCodeSequence:"00220018",LensesCodeSequence:"00220019",ChannelDescriptionCodeSequence:"0022001A",RefractiveStateSequence:"0022001B",MydriaticAgentCodeSequence:"0022001C",RelativeImagePositionCodeSequence:"0022001D",CameraAngleOfView:"0022001E",StereoPairsSequence:"00220020",LeftImageSequence:"00220021",RightImageSequence:"00220022",StereoPairsPresent:"00220028",AxialLengthOfTheEye:"00220030",OphthalmicFrameLocationSequence:"00220031",ReferenceCoordinates:"00220032",DepthSpatialResolution:"00220035",MaximumDepthDistortion:"00220036",AlongScanSpatialResolution:"00220037",MaximumAlongScanDistortion:"00220038",OphthalmicImageOrientation:"00220039",DepthOfTransverseImage:"00220041",MydriaticAgentConcentrationUnitsSequence:"00220042",AcrossScanSpatialResolution:"00220048",MaximumAcrossScanDistortion:"00220049",MydriaticAgentConcentration:"0022004E",IlluminationWaveLength:"00220055",IlluminationPower:"00220056",IlluminationBandwidth:"00220057",MydriaticAgentSequence:"00220058",OphthalmicAxialMeasurementsRightEyeSequence:"00221007",OphthalmicAxialMeasurementsLeftEyeSequence:"00221008",OphthalmicAxialMeasurementsDeviceType:"00221009",OphthalmicAxialLengthMeasurementsType:"00221010",OphthalmicAxialLengthSequence:"00221012",OphthalmicAxialLength:"00221019",LensStatusCodeSequence:"00221024",VitreousStatusCodeSequence:"00221025",IOLFormulaCodeSequence:"00221028",IOLFormulaDetail:"00221029",KeratometerIndex:"00221033",SourceOfOphthalmicAxialLengthCodeSequence:"00221035",TargetRefraction:"00221037",RefractiveProcedureOccurred:"00221039",RefractiveSurgeryTypeCodeSequence:"00221040",OphthalmicUltrasoundMethodCodeSequence:"00221044",OphthalmicAxialLengthMeasurementsSequence:"00221050",IOLPower:"00221053",PredictedRefractiveError:"00221054",OphthalmicAxialLengthVelocity:"00221059",LensStatusDescription:"00221065",VitreousStatusDescription:"00221066",IOLPowerSequence:"00221090",LensConstantSequence:"00221092",IOLManufacturer:"00221093",LensConstantDescription:"00221094",ImplantName:"00221095",KeratometryMeasurementTypeCodeSequence:"00221096",ImplantPartNumber:"00221097",ReferencedOphthalmicAxialMeasurementsSequence:"00221100",OphthalmicAxialLengthMeasurementsSegmentNameCodeSequence:"00221101",RefractiveErrorBeforeRefractiveSurgeryCodeSequence:"00221103",IOLPowerForExactEmmetropia:"00221121",IOLPowerForExactTargetRefraction:"00221122",AnteriorChamberDepthDefinitionCodeSequence:"00221125",LensThicknessSequence:"00221127",AnteriorChamberDepthSequence:"00221128",LensThickness:"00221130",AnteriorChamberDepth:"00221131",SourceOfLensThicknessDataCodeSequence:"00221132",SourceOfAnteriorChamberDepthDataCodeSequence:"00221133",SourceOfRefractiveMeasurementsSequence:"00221134",SourceOfRefractiveMeasurementsCodeSequence:"00221135",OphthalmicAxialLengthMeasurementModified:"00221140",OphthalmicAxialLengthDataSourceCodeSequence:"00221150",OphthalmicAxialLengthAcquisitionMethodCodeSequence:"00221153",SignalToNoiseRatio:"00221155",OphthalmicAxialLengthDataSourceDescription:"00221159",OphthalmicAxialLengthMeasurementsTotalLengthSequence:"00221210",OphthalmicAxialLengthMeasurementsSegmentalLengthSequence:"00221211",OphthalmicAxialLengthMeasurementsLengthSummationSequence:"00221212",UltrasoundOphthalmicAxialLengthMeasurementsSequence:"00221220",OpticalOphthalmicAxialLengthMeasurementsSequence:"00221225",UltrasoundSelectedOphthalmicAxialLengthSequence:"00221230",OphthalmicAxialLengthSelectionMethodCodeSequence:"00221250",OpticalSelectedOphthalmicAxialLengthSequence:"00221255",SelectedSegmentalOphthalmicAxialLengthSequence:"00221257",SelectedTotalOphthalmicAxialLengthSequence:"00221260",OphthalmicAxialLengthQualityMetricSequence:"00221262",OphthalmicAxialLengthQualityMetricTypeCodeSequence:"00221265",OphthalmicAxialLengthQualityMetricTypeDescription:"00221273",IntraocularLensCalculationsRightEyeSequence:"00221300",IntraocularLensCalculationsLeftEyeSequence:"00221310",ReferencedOphthalmicAxialLengthMeasurementQCImageSequence:"00221330",OphthalmicMappingDeviceType:"00221415",AcquisitionMethodCodeSequence:"00221420",AcquisitionMethodAlgorithmSequence:"00221423",OphthalmicThicknessMapTypeCodeSequence:"00221436",OphthalmicThicknessMappingNormalsSequence:"00221443",RetinalThicknessDefinitionCodeSequence:"00221445",PixelValueMappingToCodedConceptSequence:"00221450",MappedPixelValue:"00221452",PixelValueMappingExplanation:"00221454",OphthalmicThicknessMapQualityThresholdSequence:"00221458",OphthalmicThicknessMapThresholdQualityRating:"00221460",AnatomicStructureReferencePoint:"00221463",RegistrationToLocalizerSequence:"00221465",RegisteredLocalizerUnits:"00221466",RegisteredLocalizerTopLeftHandCorner:"00221467",RegisteredLocalizerBottomRightHandCorner:"00221468",OphthalmicThicknessMapQualityRatingSequence:"00221470",RelevantOPTAttributesSequence:"00221472",TransformationMethodCodeSequence:"00221512",TransformationAlgorithmSequence:"00221513",OphthalmicAxialLengthMethod:"00221515",OphthalmicFOV:"00221517",TwoDimensionalToThreeDimensionalMapSequence:"00221518",WideFieldOphthalmicPhotographyQualityRatingSequence:"00221525",WideFieldOphthalmicPhotographyQualityThresholdSequence:"00221526",WideFieldOphthalmicPhotographyThresholdQualityRating:"00221527",XCoordinatesCenterPixelViewAngle:"00221528",YCoordinatesCenterPixelViewAngle:"00221529",NumberOfMapPoints:"00221530",TwoDimensionalToThreeDimensionalMapData:"00221531",DerivationAlgorithmSequence:"00221612",OphthalmicImageTypeCodeSequence:"00221615",OphthalmicImageTypeDescription:"00221616",ScanPatternTypeCodeSequence:"00221618",ReferencedSurfaceMeshIdentificationSequence:"00221620",OphthalmicVolumetricPropertiesFlag:"00221622",OphthalmicAnatomicReferencePointXCoordinate:"00221624",OphthalmicAnatomicReferencePointYCoordinate:"00221626",OphthalmicEnFaceImageQualityRatingSequence:"00221628",QualityThreshold:"00221630",OCTBscanAnalysisAcquisitionParametersSequence:"00221640",NumberofBscansPerFrame:"00221642",BscanSlabThickness:"00221643",DistanceBetweenBscanSlabs:"00221644",BscanCycleTime:"00221645",BscanCycleTimeVector:"00221646",AscanRate:"00221649",BscanRate:"00221650",SurfaceMeshZPixelOffset:"00221658",VisualFieldHorizontalExtent:"00240010",VisualFieldVerticalExtent:"00240011",VisualFieldShape:"00240012",ScreeningTestModeCodeSequence:"00240016",MaximumStimulusLuminance:"00240018",BackgroundLuminance:"00240020",StimulusColorCodeSequence:"00240021",BackgroundIlluminationColorCodeSequence:"00240024",StimulusArea:"00240025",StimulusPresentationTime:"00240028",FixationSequence:"00240032",FixationMonitoringCodeSequence:"00240033",VisualFieldCatchTrialSequence:"00240034",FixationCheckedQuantity:"00240035",PatientNotProperlyFixatedQuantity:"00240036",PresentedVisualStimuliDataFlag:"00240037",NumberOfVisualStimuli:"00240038",ExcessiveFixationLossesDataFlag:"00240039",ExcessiveFixationLosses:"00240040",StimuliRetestingQuantity:"00240042",CommentsOnPatientPerformanceOfVisualField:"00240044",FalseNegativesEstimateFlag:"00240045",FalseNegativesEstimate:"00240046",NegativeCatchTrialsQuantity:"00240048",FalseNegativesQuantity:"00240050",ExcessiveFalseNegativesDataFlag:"00240051",ExcessiveFalseNegatives:"00240052",FalsePositivesEstimateFlag:"00240053",FalsePositivesEstimate:"00240054",CatchTrialsDataFlag:"00240055",PositiveCatchTrialsQuantity:"00240056",TestPointNormalsDataFlag:"00240057",TestPointNormalsSequence:"00240058",GlobalDeviationProbabilityNormalsFlag:"00240059",FalsePositivesQuantity:"00240060",ExcessiveFalsePositivesDataFlag:"00240061",ExcessiveFalsePositives:"00240062",VisualFieldTestNormalsFlag:"00240063",ResultsNormalsSequence:"00240064",AgeCorrectedSensitivityDeviationAlgorithmSequence:"00240065",GlobalDeviationFromNormal:"00240066",GeneralizedDefectSensitivityDeviationAlgorithmSequence:"00240067",LocalizedDeviationFromNormal:"00240068",PatientReliabilityIndicator:"00240069",VisualFieldMeanSensitivity:"00240070",GlobalDeviationProbability:"00240071",LocalDeviationProbabilityNormalsFlag:"00240072",LocalizedDeviationProbability:"00240073",ShortTermFluctuationCalculated:"00240074",ShortTermFluctuation:"00240075",ShortTermFluctuationProbabilityCalculated:"00240076",ShortTermFluctuationProbability:"00240077",CorrectedLocalizedDeviationFromNormalCalculated:"00240078",CorrectedLocalizedDeviationFromNormal:"00240079",CorrectedLocalizedDeviationFromNormalProbabilityCalculated:"00240080",CorrectedLocalizedDeviationFromNormalProbability:"00240081",GlobalDeviationProbabilitySequence:"00240083",LocalizedDeviationProbabilitySequence:"00240085",FovealSensitivityMeasured:"00240086",FovealSensitivity:"00240087",VisualFieldTestDuration:"00240088",VisualFieldTestPointSequence:"00240089",VisualFieldTestPointXCoordinate:"00240090",VisualFieldTestPointYCoordinate:"00240091",AgeCorrectedSensitivityDeviationValue:"00240092",StimulusResults:"00240093",SensitivityValue:"00240094",RetestStimulusSeen:"00240095",RetestSensitivityValue:"00240096",VisualFieldTestPointNormalsSequence:"00240097",QuantifiedDefect:"00240098",AgeCorrectedSensitivityDeviationProbabilityValue:"00240100",GeneralizedDefectCorrectedSensitivityDeviationFlag:"00240102",GeneralizedDefectCorrectedSensitivityDeviationValue:"00240103",GeneralizedDefectCorrectedSensitivityDeviationProbabilityValue:"00240104",MinimumSensitivityValue:"00240105",BlindSpotLocalized:"00240106",BlindSpotXCoordinate:"00240107",BlindSpotYCoordinate:"00240108",VisualAcuityMeasurementSequence:"00240110",RefractiveParametersUsedOnPatientSequence:"00240112",MeasurementLaterality:"00240113",OphthalmicPatientClinicalInformationLeftEyeSequence:"00240114",OphthalmicPatientClinicalInformationRightEyeSequence:"00240115",FovealPointNormativeDataFlag:"00240117",FovealPointProbabilityValue:"00240118",ScreeningBaselineMeasured:"00240120",ScreeningBaselineMeasuredSequence:"00240122",ScreeningBaselineType:"00240124",ScreeningBaselineValue:"00240126",AlgorithmSource:"00240202",DataSetName:"00240306",DataSetVersion:"00240307",DataSetSource:"00240308",DataSetDescription:"00240309",VisualFieldTestReliabilityGlobalIndexSequence:"00240317",VisualFieldGlobalResultsIndexSequence:"00240320",DataObservationSequence:"00240325",IndexNormalsFlag:"00240338",IndexProbability:"00240341",IndexProbabilitySequence:"00240344",SamplesPerPixel:"00280002",SamplesPerPixelUsed:"00280003",PhotometricInterpretation:"00280004",ImageDimensions:"00280005",PlanarConfiguration:"00280006",NumberOfFrames:"00280008",FrameIncrementPointer:"00280009",FrameDimensionPointer:"0028000A",Rows:"00280010",Columns:"00280011",Planes:"00280012",UltrasoundColorDataPresent:"00280014","":"00280020",PixelSpacing:"00280030",ZoomFactor:"00280031",ZoomCenter:"00280032",PixelAspectRatio:"00280034",ImageFormat:"00280040",ManipulatedImage:"00280050",CorrectedImage:"00280051",CompressionRecognitionCode:"0028005F",CompressionCode:"00280060",CompressionOriginator:"00280061",CompressionLabel:"00280062",CompressionDescription:"00280063",CompressionSequence:"00280065",CompressionStepPointers:"00280066",RepeatInterval:"00280068",BitsGrouped:"00280069",PerimeterTable:"00280070",PerimeterValue:"00280071",PredictorRows:"00280080",PredictorColumns:"00280081",PredictorConstants:"00280082",BlockedPixels:"00280090",BlockRows:"00280091",BlockColumns:"00280092",RowOverlap:"00280093",ColumnOverlap:"00280094",BitsAllocated:"00280100",BitsStored:"00280101",HighBit:"00280102",PixelRepresentation:"00280103",SmallestValidPixelValue:"00280104",LargestValidPixelValue:"00280105",SmallestImagePixelValue:"00280106",LargestImagePixelValue:"00280107",SmallestPixelValueInSeries:"00280108",LargestPixelValueInSeries:"00280109",SmallestImagePixelValueInPlane:"00280110",LargestImagePixelValueInPlane:"00280111",PixelPaddingValue:"00280120",PixelPaddingRangeLimit:"00280121",FloatPixelPaddingValue:"00280122",DoubleFloatPixelPaddingValue:"00280123",FloatPixelPaddingRangeLimit:"00280124",DoubleFloatPixelPaddingRangeLimit:"00280125",ImageLocation:"00280200",QualityControlImage:"00280300",BurnedInAnnotation:"00280301",RecognizableVisualFeatures:"00280302",LongitudinalTemporalInformationModified:"00280303",ReferencedColorPaletteInstanceUID:"00280304",TransformLabel:"00280400",TransformVersionNumber:"00280401",NumberOfTransformSteps:"00280402",SequenceOfCompressedData:"00280403",DetailsOfCoefficients:"00280404",DCTLabel:"00280700",DataBlockDescription:"00280701",DataBlock:"00280702",NormalizationFactorFormat:"00280710",ZonalMapNumberFormat:"00280720",ZonalMapLocation:"00280721",ZonalMapFormat:"00280722",AdaptiveMapFormat:"00280730",CodeNumberFormat:"00280740",PixelSpacingCalibrationType:"00280A02",PixelSpacingCalibrationDescription:"00280A04",PixelIntensityRelationship:"00281040",PixelIntensityRelationshipSign:"00281041",WindowCenter:"00281050",WindowWidth:"00281051",RescaleIntercept:"00281052",RescaleSlope:"00281053",RescaleType:"00281054",WindowCenterWidthExplanation:"00281055",VOILUTFunction:"00281056",GrayScale:"00281080",RecommendedViewingMode:"00281090",GrayLookupTableDescriptor:"00281100",RedPaletteColorLookupTableDescriptor:"00281101",GreenPaletteColorLookupTableDescriptor:"00281102",BluePaletteColorLookupTableDescriptor:"00281103",AlphaPaletteColorLookupTableDescriptor:"00281104",LargeRedPaletteColorLookupTableDescriptor:"00281111",LargeGreenPaletteColorLookupTableDescriptor:"00281112",LargeBluePaletteColorLookupTableDescriptor:"00281113",PaletteColorLookupTableUID:"00281199",GrayLookupTableData:"00281200",RedPaletteColorLookupTableData:"00281201",GreenPaletteColorLookupTableData:"00281202",BluePaletteColorLookupTableData:"00281203",AlphaPaletteColorLookupTableData:"00281204",LargeRedPaletteColorLookupTableData:"00281211",LargeGreenPaletteColorLookupTableData:"00281212",LargeBluePaletteColorLookupTableData:"00281213",LargePaletteColorLookupTableUID:"00281214",SegmentedRedPaletteColorLookupTableData:"00281221",SegmentedGreenPaletteColorLookupTableData:"00281222",SegmentedBluePaletteColorLookupTableData:"00281223",SegmentedAlphaPaletteColorLookupTableData:"00281224",StoredValueColorRangeSequence:"00281230",MinimumStoredValueMapped:"00281231",MaximumStoredValueMapped:"00281232",BreastImplantPresent:"00281300",PartialView:"00281350",PartialViewDescription:"00281351",PartialViewCodeSequence:"00281352",SpatialLocationsPreserved:"0028135A",DataFrameAssignmentSequence:"00281401",DataPathAssignment:"00281402",BitsMappedToColorLookupTable:"00281403","00281404":"BlendingLUT1Sequence","00281405":"BlendingLUT1TransferFunction",BlendingWeightConstant:"00281406",BlendingLookupTableDescriptor:"00281407",BlendingLookupTableData:"00281408",EnhancedPaletteColorLookupTableSequence:"0028140B","0028140C":"BlendingLUT2Sequence","0028140D":"BlendingLUT2TransferFunction",DataPathID:"0028140E",RGBLUTTransferFunction:"0028140F",AlphaLUTTransferFunction:"00281410",ICCProfile:"00282000",ColorSpace:"00282002",LossyImageCompression:"00282110",LossyImageCompressionRatio:"00282112",LossyImageCompressionMethod:"00282114",ModalityLUTSequence:"00283000",LUTDescriptor:"00283002",LUTExplanation:"00283003",ModalityLUTType:"00283004",LUTData:"00283006",VOILUTSequence:"00283010",SoftcopyVOILUTSequence:"00283110",ImagePresentationComments:"00284000",BiPlaneAcquisitionSequence:"00285000",RepresentativeFrameNumber:"00286010",FrameNumbersOfInterest:"00286020",FrameOfInterestDescription:"00286022",FrameOfInterestType:"00286023",MaskPointers:"00286030",RWavePointer:"00286040",MaskSubtractionSequence:"00286100",MaskOperation:"00286101",ApplicableFrameRange:"00286102",MaskFrameNumbers:"00286110",ContrastFrameAveraging:"00286112",MaskSubPixelShift:"00286114",TIDOffset:"00286120",MaskOperationExplanation:"00286190",EquipmentAdministratorSequence:"00287000",NumberOfDisplaySubsystems:"00287001",CurrentConfigurationID:"00287002",DisplaySubsystemID:"00287003",DisplaySubsystemName:"00287004",DisplaySubsystemDescription:"00287005",SystemStatus:"00287006",SystemStatusComment:"00287007",TargetLuminanceCharacteristicsSequence:"00287008",LuminanceCharacteristicsID:"00287009",DisplaySubsystemConfigurationSequence:"0028700A",ConfigurationID:"0028700B",ConfigurationName:"0028700C",ConfigurationDescription:"0028700D",ReferencedTargetLuminanceCharacteristicsID:"0028700E",QAResultsSequence:"0028700F",DisplaySubsystemQAResultsSequence:"00287010",ConfigurationQAResultsSequence:"00287011",MeasurementEquipmentSequence:"00287012",MeasurementFunctions:"00287013",MeasurementEquipmentType:"00287014",VisualEvaluationResultSequence:"00287015",DisplayCalibrationResultSequence:"00287016",DDLValue:"00287017",CIExyWhitePoint:"00287018",DisplayFunctionType:"00287019",GammaValue:"0028701A",NumberOfLuminancePoints:"0028701B",LuminanceResponseSequence:"0028701C",TargetMinimumLuminance:"0028701D",TargetMaximumLuminance:"0028701E",LuminanceValue:"0028701F",LuminanceResponseDescription:"00287020",WhitePointFlag:"00287021",DisplayDeviceTypeCodeSequence:"00287022",DisplaySubsystemSequence:"00287023",LuminanceResultSequence:"00287024",AmbientLightValueSource:"00287025",MeasuredCharacteristics:"00287026",LuminanceUniformityResultSequence:"00287027",VisualEvaluationTestSequence:"00287028",TestResult:"00287029",TestResultComment:"0028702A",TestImageValidation:"0028702B",TestPatternCodeSequence:"0028702C",MeasurementPatternCodeSequence:"0028702D",VisualEvaluationMethodCodeSequence:"0028702E",PixelDataProviderURL:"00287FE0",DataPointRows:"00289001",DataPointColumns:"00289002",SignalDomainColumns:"00289003",LargestMonochromePixelValue:"00289099",DataRepresentation:"00289108",PixelMeasuresSequence:"00289110",FrameVOILUTSequence:"00289132",PixelValueTransformationSequence:"00289145",SignalDomainRows:"00289235",DisplayFilterPercentage:"00289411",FramePixelShiftSequence:"00289415",SubtractionItemID:"00289416",PixelIntensityRelationshipLUTSequence:"00289422",FramePixelDataPropertiesSequence:"00289443",GeometricalProperties:"00289444",GeometricMaximumDistortion:"00289445",ImageProcessingApplied:"00289446",MaskSelectionMode:"00289454",LUTFunction:"00289474",MaskVisibilityPercentage:"00289478",PixelShiftSequence:"00289501",RegionPixelShiftSequence:"00289502",VerticesOfTheRegion:"00289503",MultiFramePresentationSequence:"00289505",PixelShiftFrameRange:"00289506",LUTFrameRange:"00289507",ImageToEquipmentMappingMatrix:"00289520",EquipmentCoordinateSystemIdentification:"00289537",StudyStatusID:"0032000A",StudyPriorityID:"0032000C",StudyIDIssuer:"00320012",StudyVerifiedDate:"00320032",StudyVerifiedTime:"00320033",StudyReadDate:"00320034",StudyReadTime:"00320035",ScheduledStudyStartDate:"00321000",ScheduledStudyStartTime:"00321001",ScheduledStudyStopDate:"00321010",ScheduledStudyStopTime:"00321011",ScheduledStudyLocation:"00321020",ScheduledStudyLocationAETitle:"00321021",ReasonForStudy:"00321030",RequestingPhysicianIdentificationSequence:"00321031",RequestingPhysician:"00321032",RequestingService:"00321033",RequestingServiceCodeSequence:"00321034",StudyArrivalDate:"00321040",StudyArrivalTime:"00321041",StudyCompletionDate:"00321050",StudyCompletionTime:"00321051",StudyComponentStatusID:"00321055",RequestedProcedureDescription:"00321060",RequestedProcedureCodeSequence:"00321064",RequestedContrastAgent:"00321070",StudyComments:"00324000",ReferencedPatientAliasSequence:"00380004",VisitStatusID:"00380008",AdmissionID:"00380010",IssuerOfAdmissionID:"00380011",IssuerOfAdmissionIDSequence:"00380014",RouteOfAdmissions:"00380016",ScheduledAdmissionDate:"0038001A",ScheduledAdmissionTime:"0038001B",ScheduledDischargeDate:"0038001C",ScheduledDischargeTime:"0038001D",ScheduledPatientInstitutionResidence:"0038001E",AdmittingDate:"00380020",AdmittingTime:"00380021",DischargeDate:"00380030",DischargeTime:"00380032",DischargeDiagnosisDescription:"00380040",DischargeDiagnosisCodeSequence:"00380044",SpecialNeeds:"00380050",ServiceEpisodeID:"00380060",IssuerOfServiceEpisodeID:"00380061",ServiceEpisodeDescription:"00380062",IssuerOfServiceEpisodeIDSequence:"00380064",PertinentDocumentsSequence:"00380100",PertinentResourcesSequence:"00380101",ResourceDescription:"00380102",CurrentPatientLocation:"00380300",PatientInstitutionResidence:"00380400",PatientState:"00380500",PatientClinicalTrialParticipationSequence:"00380502",VisitComments:"00384000",WaveformOriginality:"003A0004",NumberOfWaveformChannels:"003A0005",NumberOfWaveformSamples:"003A0010",SamplingFrequency:"003A001A",MultiplexGroupLabel:"003A0020",ChannelDefinitionSequence:"003A0200",WaveformChannelNumber:"003A0202",ChannelLabel:"003A0203",ChannelStatus:"003A0205",ChannelSourceSequence:"003A0208",ChannelSourceModifiersSequence:"003A0209",SourceWaveformSequence:"003A020A",ChannelDerivationDescription:"003A020C",ChannelSensitivity:"003A0210",ChannelSensitivityUnitsSequence:"003A0211",ChannelSensitivityCorrectionFactor:"003A0212",ChannelBaseline:"003A0213",ChannelTimeSkew:"003A0214",ChannelSampleSkew:"003A0215",ChannelOffset:"003A0218",WaveformBitsStored:"003A021A",FilterLowFrequency:"003A0220",FilterHighFrequency:"003A0221",NotchFilterFrequency:"003A0222",NotchFilterBandwidth:"003A0223",WaveformDataDisplayScale:"003A0230",WaveformDisplayBackgroundCIELabValue:"003A0231",WaveformPresentationGroupSequence:"003A0240",PresentationGroupNumber:"003A0241",ChannelDisplaySequence:"003A0242",ChannelRecommendedDisplayCIELabValue:"003A0244",ChannelPosition:"003A0245",DisplayShadingFlag:"003A0246",FractionalChannelDisplayScale:"003A0247",AbsoluteChannelDisplayScale:"003A0248",MultiplexedAudioChannelsDescriptionCodeSequence:"003A0300",ChannelIdentificationCode:"003A0301",ChannelMode:"003A0302",ScheduledStationAETitle:"00400001",ScheduledProcedureStepStartDate:"00400002",ScheduledProcedureStepStartTime:"00400003",ScheduledProcedureStepEndDate:"00400004",ScheduledProcedureStepEndTime:"00400005",ScheduledPerformingPhysicianName:"00400006",ScheduledProcedureStepDescription:"00400007",ScheduledProtocolCodeSequence:"00400008",ScheduledProcedureStepID:"00400009",StageCodeSequence:"0040000A",ScheduledPerformingPhysicianIdentificationSequence:"0040000B",ScheduledStationName:"00400010",ScheduledProcedureStepLocation:"00400011",PreMedication:"00400012",ScheduledProcedureStepStatus:"00400020",OrderPlacerIdentifierSequence:"00400026",OrderFillerIdentifierSequence:"00400027",LocalNamespaceEntityID:"00400031",UniversalEntityID:"00400032",UniversalEntityIDType:"00400033",IdentifierTypeCode:"00400035",AssigningFacilitySequence:"00400036",AssigningJurisdictionCodeSequence:"00400039",AssigningAgencyOrDepartmentCodeSequence:"0040003A",ScheduledProcedureStepSequence:"00400100",ReferencedNonImageCompositeSOPInstanceSequence:"00400220",PerformedStationAETitle:"00400241",PerformedStationName:"00400242",PerformedLocation:"00400243",PerformedProcedureStepStartDate:"00400244",PerformedProcedureStepStartTime:"00400245",PerformedProcedureStepEndDate:"00400250",PerformedProcedureStepEndTime:"00400251",PerformedProcedureStepStatus:"00400252",PerformedProcedureStepID:"00400253",PerformedProcedureStepDescription:"00400254",PerformedProcedureTypeDescription:"00400255",PerformedProtocolCodeSequence:"00400260",PerformedProtocolType:"00400261",ScheduledStepAttributesSequence:"00400270",RequestAttributesSequence:"00400275",CommentsOnThePerformedProcedureStep:"00400280",PerformedProcedureStepDiscontinuationReasonCodeSequence:"00400281",QuantitySequence:"00400293",Quantity:"00400294",MeasuringUnitsSequence:"00400295",BillingItemSequence:"00400296",TotalTimeOfFluoroscopy:"00400300",TotalNumberOfExposures:"00400301",EntranceDose:"00400302",ExposedArea:"00400303",DistanceSourceToEntrance:"00400306",DistanceSourceToSupport:"00400307",ExposureDoseSequence:"0040030E",CommentsOnRadiationDose:"00400310",XRayOutput:"00400312",HalfValueLayer:"00400314",OrganDose:"00400316",OrganExposed:"00400318",BillingProcedureStepSequence:"00400320",FilmConsumptionSequence:"00400321",BillingSuppliesAndDevicesSequence:"00400324",ReferencedProcedureStepSequence:"00400330",PerformedSeriesSequence:"00400340",CommentsOnTheScheduledProcedureStep:"00400400",ProtocolContextSequence:"00400440",ContentItemModifierSequence:"00400441",ScheduledSpecimenSequence:"00400500",SpecimenAccessionNumber:"0040050A",ContainerIdentifier:"00400512",IssuerOfTheContainerIdentifierSequence:"00400513",AlternateContainerIdentifierSequence:"00400515",ContainerTypeCodeSequence:"00400518",ContainerDescription:"0040051A",ContainerComponentSequence:"00400520",SpecimenSequence:"00400550",SpecimenIdentifier:"00400551",SpecimenDescriptionSequenceTrial:"00400552",SpecimenDescriptionTrial:"00400553",SpecimenUID:"00400554",AcquisitionContextSequence:"00400555",AcquisitionContextDescription:"00400556",SpecimenDescriptionSequence:"00400560",IssuerOfTheSpecimenIdentifierSequence:"00400562",SpecimenTypeCodeSequence:"0040059A",SpecimenShortDescription:"00400600",SpecimenDetailedDescription:"00400602",SpecimenPreparationSequence:"00400610",SpecimenPreparationStepContentItemSequence:"00400612",SpecimenLocalizationContentItemSequence:"00400620",SlideIdentifier:"004006FA",WholeSlideMicroscopyImageFrameTypeSequence:"00400710",ImageCenterPointCoordinatesSequence:"0040071A",XOffsetInSlideCoordinateSystem:"0040072A",YOffsetInSlideCoordinateSystem:"0040073A",ZOffsetInSlideCoordinateSystem:"0040074A",PixelSpacingSequence:"004008D8",CoordinateSystemAxisCodeSequence:"004008DA",MeasurementUnitsCodeSequence:"004008EA",VitalStainCodeSequenceTrial:"004009F8",RequestedProcedureID:"00401001",ReasonForTheRequestedProcedure:"00401002",RequestedProcedurePriority:"00401003",PatientTransportArrangements:"00401004",RequestedProcedureLocation:"00401005",PlacerOrderNumberProcedure:"00401006",FillerOrderNumberProcedure:"00401007",ConfidentialityCode:"00401008",ReportingPriority:"00401009",ReasonForRequestedProcedureCodeSequence:"0040100A",NamesOfIntendedRecipientsOfResults:"00401010",IntendedRecipientsOfResultsIdentificationSequence:"00401011",ReasonForPerformedProcedureCodeSequence:"00401012",RequestedProcedureDescriptionTrial:"00401060",PersonIdentificationCodeSequence:"00401101",PersonAddress:"00401102",PersonTelephoneNumbers:"00401103",PersonTelecomInformation:"00401104",RequestedProcedureComments:"00401400",ReasonForTheImagingServiceRequest:"00402001",IssueDateOfImagingServiceRequest:"00402004",IssueTimeOfImagingServiceRequest:"00402005",PlacerOrderNumberImagingServiceRequestRetired:"00402006",FillerOrderNumberImagingServiceRequestRetired:"00402007",OrderEnteredBy:"00402008",OrderEntererLocation:"00402009",OrderCallbackPhoneNumber:"00402010",OrderCallbackTelecomInformation:"00402011",PlacerOrderNumberImagingServiceRequest:"00402016",FillerOrderNumberImagingServiceRequest:"00402017",ImagingServiceRequestComments:"00402400",ConfidentialityConstraintOnPatientDataDescription:"00403001",GeneralPurposeScheduledProcedureStepStatus:"00404001",GeneralPurposePerformedProcedureStepStatus:"00404002",GeneralPurposeScheduledProcedureStepPriority:"00404003",ScheduledProcessingApplicationsCodeSequence:"00404004",ScheduledProcedureStepStartDateTime:"00404005",MultipleCopiesFlag:"00404006",PerformedProcessingApplicationsCodeSequence:"00404007",ScheduledProcedureStepExpirationDateTime:"00404008",HumanPerformerCodeSequence:"00404009",ScheduledProcedureStepModificationDateTime:"00404010",ExpectedCompletionDateTime:"00404011",ResultingGeneralPurposePerformedProcedureStepsSequence:"00404015",ReferencedGeneralPurposeScheduledProcedureStepSequence:"00404016",ScheduledWorkitemCodeSequence:"00404018",PerformedWorkitemCodeSequence:"00404019",InputAvailabilityFlag:"00404020",InputInformationSequence:"00404021",RelevantInformationSequence:"00404022",ReferencedGeneralPurposeScheduledProcedureStepTransactionUID:"00404023",ScheduledStationNameCodeSequence:"00404025",ScheduledStationClassCodeSequence:"00404026",ScheduledStationGeographicLocationCodeSequence:"00404027",PerformedStationNameCodeSequence:"00404028",PerformedStationClassCodeSequence:"00404029",PerformedStationGeographicLocationCodeSequence:"00404030",RequestedSubsequentWorkitemCodeSequence:"00404031",NonDICOMOutputCodeSequence:"00404032",OutputInformationSequence:"00404033",ScheduledHumanPerformersSequence:"00404034",ActualHumanPerformersSequence:"00404035",HumanPerformerOrganization:"00404036",HumanPerformerName:"00404037",RawDataHandling:"00404040",InputReadinessState:"00404041",PerformedProcedureStepStartDateTime:"00404050",PerformedProcedureStepEndDateTime:"00404051",ProcedureStepCancellationDateTime:"00404052",OutputDestinationSequence:"00404070",DICOMStorageSequence:"00404071",STOWRSStorageSequence:"00404072",StorageURL:"00404073",XDSStorageSequence:"00404074",EntranceDoseInmGy:"00408302",EntranceDoseDerivation:"00408303",ParametricMapFrameTypeSequence:"00409092",ReferencedImageRealWorldValueMappingSequence:"00409094",RealWorldValueMappingSequence:"00409096",PixelValueMappingCodeSequence:"00409098",LUTLabel:"00409210",RealWorldValueLastValueMapped:"00409211",RealWorldValueLUTData:"00409212",DoubleFloatRealWorldValueLastValueMapped:"00409213",DoubleFloatRealWorldValueFirstValueMapped:"00409214",RealWorldValueFirstValueMapped:"00409216",QuantityDefinitionSequence:"00409220",RealWorldValueIntercept:"00409224",RealWorldValueSlope:"00409225",FindingsFlagTrial:"0040A007",RelationshipType:"0040A010",FindingsSequenceTrial:"0040A020",FindingsGroupUIDTrial:"0040A021",ReferencedFindingsGroupUIDTrial:"0040A022",FindingsGroupRecordingDateTrial:"0040A023",FindingsGroupRecordingTimeTrial:"0040A024",FindingsSourceCategoryCodeSequenceTrial:"0040A026",VerifyingOrganization:"0040A027",DocumentingOrganizationIdentifierCodeSequenceTrial:"0040A028",VerificationDateTime:"0040A030",ObservationDateTime:"0040A032",ValueType:"0040A040",ConceptNameCodeSequence:"0040A043",MeasurementPrecisionDescriptionTrial:"0040A047",ContinuityOfContent:"0040A050",UrgencyOrPriorityAlertsTrial:"0040A057",SequencingIndicatorTrial:"0040A060",DocumentIdentifierCodeSequenceTrial:"0040A066",DocumentAuthorTrial:"0040A067",DocumentAuthorIdentifierCodeSequenceTrial:"0040A068",IdentifierCodeSequenceTrial:"0040A070",VerifyingObserverSequence:"0040A073",ObjectBinaryIdentifierTrial:"0040A074",VerifyingObserverName:"0040A075",DocumentingObserverIdentifierCodeSequenceTrial:"0040A076",AuthorObserverSequence:"0040A078",ParticipantSequence:"0040A07A",CustodialOrganizationSequence:"0040A07C",ParticipationType:"0040A080",ParticipationDateTime:"0040A082",ObserverType:"0040A084",ProcedureIdentifierCodeSequenceTrial:"0040A085",VerifyingObserverIdentificationCodeSequence:"0040A088",ObjectDirectoryBinaryIdentifierTrial:"0040A089",EquivalentCDADocumentSequence:"0040A090",ReferencedWaveformChannels:"0040A0B0",DateOfDocumentOrVerbalTransactionTrial:"0040A110",TimeOfDocumentCreationOrVerbalTransactionTrial:"0040A112",DateTime:"0040A120",Date:"0040A121",Time:"0040A122",PersonName:"0040A123",UID:"0040A124",ReportStatusIDTrial:"0040A125",TemporalRangeType:"0040A130",ReferencedSamplePositions:"0040A132",ReferencedFrameNumbers:"0040A136",ReferencedTimeOffsets:"0040A138",ReferencedDateTime:"0040A13A",TextValue:"0040A160",FloatingPointValue:"0040A161",RationalNumeratorValue:"0040A162",RationalDenominatorValue:"0040A163",ObservationCategoryCodeSequenceTrial:"0040A167",ConceptCodeSequence:"0040A168",BibliographicCitationTrial:"0040A16A",PurposeOfReferenceCodeSequence:"0040A170",ObservationUID:"0040A171",ReferencedObservationUIDTrial:"0040A172",ReferencedObservationClassTrial:"0040A173",ReferencedObjectObservationClassTrial:"0040A174",AnnotationGroupNumber:"0040A180",ObservationDateTrial:"0040A192",ObservationTimeTrial:"0040A193",MeasurementAutomationTrial:"0040A194",ModifierCodeSequence:"0040A195",IdentificationDescriptionTrial:"0040A224",CoordinatesSetGeometricTypeTrial:"0040A290",AlgorithmCodeSequenceTrial:"0040A296",AlgorithmDescriptionTrial:"0040A297",PixelCoordinatesSetTrial:"0040A29A",MeasuredValueSequence:"0040A300",NumericValueQualifierCodeSequence:"0040A301",CurrentObserverTrial:"0040A307",NumericValue:"0040A30A",ReferencedAccessionSequenceTrial:"0040A313",ReportStatusCommentTrial:"0040A33A",ProcedureContextSequenceTrial:"0040A340",VerbalSourceTrial:"0040A352",AddressTrial:"0040A353",TelephoneNumberTrial:"0040A354",VerbalSourceIdentifierCodeSequenceTrial:"0040A358",PredecessorDocumentsSequence:"0040A360",ReferencedRequestSequence:"0040A370",PerformedProcedureCodeSequence:"0040A372",CurrentRequestedProcedureEvidenceSequence:"0040A375",ReportDetailSequenceTrial:"0040A380",PertinentOtherEvidenceSequence:"0040A385","0040A390":"HL7StructuredDocumentReferenceSequence",ObservationSubjectUIDTrial:"0040A402",ObservationSubjectClassTrial:"0040A403",ObservationSubjectTypeCodeSequenceTrial:"0040A404",CompletionFlag:"0040A491",CompletionFlagDescription:"0040A492",VerificationFlag:"0040A493",ArchiveRequested:"0040A494",PreliminaryFlag:"0040A496",ContentTemplateSequence:"0040A504",IdenticalDocumentsSequence:"0040A525",ObservationSubjectContextFlagTrial:"0040A600",ObserverContextFlagTrial:"0040A601",ProcedureContextFlagTrial:"0040A603",ContentSequence:"0040A730",RelationshipSequenceTrial:"0040A731",RelationshipTypeCodeSequenceTrial:"0040A732",LanguageCodeSequenceTrial:"0040A744",UniformResourceLocatorTrial:"0040A992",WaveformAnnotationSequence:"0040B020",TemplateIdentifier:"0040DB00",TemplateVersion:"0040DB06",TemplateLocalVersion:"0040DB07",TemplateExtensionFlag:"0040DB0B",TemplateExtensionOrganizationUID:"0040DB0C",TemplateExtensionCreatorUID:"0040DB0D",ReferencedContentItemIdentifier:"0040DB73","0040E001":"HL7InstanceIdentifier","0040E004":"HL7DocumentEffectiveTime","0040E006":"HL7DocumentTypeCodeSequence",DocumentClassCodeSequence:"0040E008",RetrieveURI:"0040E010",RetrieveLocationUID:"0040E011",TypeOfInstances:"0040E020",DICOMRetrievalSequence:"0040E021",DICOMMediaRetrievalSequence:"0040E022",WADORetrievalSequence:"0040E023",XDSRetrievalSequence:"0040E024",WADORSRetrievalSequence:"0040E025",RepositoryUniqueID:"0040E030",HomeCommunityID:"0040E031",DocumentTitle:"00420010",EncapsulatedDocument:"00420011",MIMETypeOfEncapsulatedDocument:"00420012",SourceInstanceSequence:"00420013",ListOfMIMETypes:"00420014",ProductPackageIdentifier:"00440001",SubstanceAdministrationApproval:"00440002",ApprovalStatusFurtherDescription:"00440003",ApprovalStatusDateTime:"00440004",ProductTypeCodeSequence:"00440007",ProductName:"00440008",ProductDescription:"00440009",ProductLotIdentifier:"0044000A",ProductExpirationDateTime:"0044000B",SubstanceAdministrationDateTime:"00440010",SubstanceAdministrationNotes:"00440011",SubstanceAdministrationDeviceID:"00440012",ProductParameterSequence:"00440013",SubstanceAdministrationParameterSequence:"00440019",ApprovalSequence:"00440100",AssertionCodeSequence:"00440101",AssertionUID:"00440102",AsserterIdentificationSequence:"00440103",AssertionDateTime:"00440104",AssertionExpirationDateTime:"00440105",AssertionComments:"00440106",RelatedAssertionSequence:"00440107",ReferencedAssertionUID:"00440108",ApprovalSubjectSequence:"00440109",OrganizationalRoleCodeSequence:"0044010A",LensDescription:"00460012",RightLensSequence:"00460014",LeftLensSequence:"00460015",UnspecifiedLateralityLensSequence:"00460016",CylinderSequence:"00460018",PrismSequence:"00460028",HorizontalPrismPower:"00460030",HorizontalPrismBase:"00460032",VerticalPrismPower:"00460034",VerticalPrismBase:"00460036",LensSegmentType:"00460038",OpticalTransmittance:"00460040",ChannelWidth:"00460042",PupilSize:"00460044",CornealSize:"00460046",AutorefractionRightEyeSequence:"00460050",AutorefractionLeftEyeSequence:"00460052",DistancePupillaryDistance:"00460060",NearPupillaryDistance:"00460062",IntermediatePupillaryDistance:"00460063",OtherPupillaryDistance:"00460064",KeratometryRightEyeSequence:"00460070",KeratometryLeftEyeSequence:"00460071",SteepKeratometricAxisSequence:"00460074",RadiusOfCurvature:"00460075",KeratometricPower:"00460076",KeratometricAxis:"00460077",FlatKeratometricAxisSequence:"00460080",BackgroundColor:"00460092",Optotype:"00460094",OptotypePresentation:"00460095",SubjectiveRefractionRightEyeSequence:"00460097",SubjectiveRefractionLeftEyeSequence:"00460098",AddNearSequence:"00460100",AddIntermediateSequence:"00460101",AddOtherSequence:"00460102",AddPower:"00460104",ViewingDistance:"00460106",VisualAcuityTypeCodeSequence:"00460121",VisualAcuityRightEyeSequence:"00460122",VisualAcuityLeftEyeSequence:"00460123",VisualAcuityBothEyesOpenSequence:"00460124",ViewingDistanceType:"00460125",VisualAcuityModifiers:"00460135",DecimalVisualAcuity:"00460137",OptotypeDetailedDefinition:"00460139",ReferencedRefractiveMeasurementsSequence:"00460145",SpherePower:"00460146",CylinderPower:"00460147",CornealTopographySurface:"00460201",CornealVertexLocation:"00460202",PupilCentroidXCoordinate:"00460203",PupilCentroidYCoordinate:"00460204",EquivalentPupilRadius:"00460205",CornealTopographyMapTypeCodeSequence:"00460207",VerticesOfTheOutlineOfPupil:"00460208",CornealTopographyMappingNormalsSequence:"00460210",MaximumCornealCurvatureSequence:"00460211",MaximumCornealCurvature:"00460212",MaximumCornealCurvatureLocation:"00460213",MinimumKeratometricSequence:"00460215",SimulatedKeratometricCylinderSequence:"00460218",AverageCornealPower:"00460220",CornealISValue:"00460224",AnalyzedArea:"00460227",SurfaceRegularityIndex:"00460230",SurfaceAsymmetryIndex:"00460232",CornealEccentricityIndex:"00460234",KeratoconusPredictionIndex:"00460236",DecimalPotentialVisualAcuity:"00460238",CornealTopographyMapQualityEvaluation:"00460242",SourceImageCornealProcessedDataSequence:"00460244",CornealPointLocation:"00460247",CornealPointEstimated:"00460248",AxialPower:"00460249",TangentialPower:"00460250",RefractivePower:"00460251",RelativeElevation:"00460252",CornealWavefront:"00460253",ImagedVolumeWidth:"00480001",ImagedVolumeHeight:"00480002",ImagedVolumeDepth:"00480003",TotalPixelMatrixColumns:"00480006",TotalPixelMatrixRows:"00480007",TotalPixelMatrixOriginSequence:"00480008",SpecimenLabelInImage:"00480010",FocusMethod:"00480011",ExtendedDepthOfField:"00480012",NumberOfFocalPlanes:"00480013",DistanceBetweenFocalPlanes:"00480014",RecommendedAbsentPixelCIELabValue:"00480015",IlluminatorTypeCodeSequence:"00480100",ImageOrientationSlide:"00480102",OpticalPathSequence:"00480105",OpticalPathIdentifier:"00480106",OpticalPathDescription:"00480107",IlluminationColorCodeSequence:"00480108",SpecimenReferenceSequence:"00480110",CondenserLensPower:"00480111",ObjectiveLensPower:"00480112",ObjectiveLensNumericalAperture:"00480113",PaletteColorLookupTableSequence:"00480120",ReferencedImageNavigationSequence:"00480200",TopLeftHandCornerOfLocalizerArea:"00480201",BottomRightHandCornerOfLocalizerArea:"00480202",OpticalPathIdentificationSequence:"00480207",PlanePositionSlideSequence:"0048021A",ColumnPositionInTotalImagePixelMatrix:"0048021E",RowPositionInTotalImagePixelMatrix:"0048021F",PixelOriginInterpretation:"00480301",NumberOfOpticalPaths:"00480302",TotalPixelMatrixFocalPlanes:"00480303",CalibrationImage:"00500004",DeviceSequence:"00500010",ContainerComponentTypeCodeSequence:"00500012",ContainerComponentThickness:"00500013",DeviceLength:"00500014",ContainerComponentWidth:"00500015",DeviceDiameter:"00500016",DeviceDiameterUnits:"00500017",DeviceVolume:"00500018",InterMarkerDistance:"00500019",ContainerComponentMaterial:"0050001A",ContainerComponentID:"0050001B",ContainerComponentLength:"0050001C",ContainerComponentDiameter:"0050001D",ContainerComponentDescription:"0050001E",DeviceDescription:"00500020",ContrastBolusIngredientPercentByVolume:"00520001",OCTFocalDistance:"00520002",BeamSpotSize:"00520003",EffectiveRefractiveIndex:"00520004",OCTAcquisitionDomain:"00520006",OCTOpticalCenterWavelength:"00520007",AxialResolution:"00520008",RangingDepth:"00520009",ALineRate:"00520011",ALinesPerFrame:"00520012",CatheterRotationalRate:"00520013",ALinePixelSpacing:"00520014",ModeOfPercutaneousAccessSequence:"00520016",IntravascularOCTFrameTypeSequence:"00520025",OCTZOffsetApplied:"00520026",IntravascularFrameContentSequence:"00520027",IntravascularLongitudinalDistance:"00520028",IntravascularOCTFrameContentSequence:"00520029",OCTZOffsetCorrection:"00520030",CatheterDirectionOfRotation:"00520031",SeamLineLocation:"00520033",FirstALineLocation:"00520034",SeamLineIndex:"00520036",NumberOfPaddedALines:"00520038",InterpolationType:"00520039",RefractiveIndexApplied:"0052003A",EnergyWindowVector:"00540010",NumberOfEnergyWindows:"00540011",EnergyWindowInformationSequence:"00540012",EnergyWindowRangeSequence:"00540013",EnergyWindowLowerLimit:"00540014",EnergyWindowUpperLimit:"00540015",RadiopharmaceuticalInformationSequence:"00540016",ResidualSyringeCounts:"00540017",EnergyWindowName:"00540018",DetectorVector:"00540020",NumberOfDetectors:"00540021",DetectorInformationSequence:"00540022",PhaseVector:"00540030",NumberOfPhases:"00540031",PhaseInformationSequence:"00540032",NumberOfFramesInPhase:"00540033",PhaseDelay:"00540036",PauseBetweenFrames:"00540038",PhaseDescription:"00540039",RotationVector:"00540050",NumberOfRotations:"00540051",RotationInformationSequence:"00540052",NumberOfFramesInRotation:"00540053",RRIntervalVector:"00540060",NumberOfRRIntervals:"00540061",GatedInformationSequence:"00540062",DataInformationSequence:"00540063",TimeSlotVector:"00540070",NumberOfTimeSlots:"00540071",TimeSlotInformationSequence:"00540072",TimeSlotTime:"00540073",SliceVector:"00540080",NumberOfSlices:"00540081",AngularViewVector:"00540090",TimeSliceVector:"00540100",NumberOfTimeSlices:"00540101",StartAngle:"00540200",TypeOfDetectorMotion:"00540202",TriggerVector:"00540210",NumberOfTriggersInPhase:"00540211",ViewCodeSequence:"00540220",ViewModifierCodeSequence:"00540222",RadionuclideCodeSequence:"00540300",AdministrationRouteCodeSequence:"00540302",RadiopharmaceuticalCodeSequence:"00540304",CalibrationDataSequence:"00540306",EnergyWindowNumber:"00540308",ImageID:"00540400",PatientOrientationCodeSequence:"00540410",PatientOrientationModifierCodeSequence:"00540412",PatientGantryRelationshipCodeSequence:"00540414",SliceProgressionDirection:"00540500",ScanProgressionDirection:"00540501",SeriesType:"00541000",Units:"00541001",CountsSource:"00541002",ReprojectionMethod:"00541004",SUVType:"00541006",RandomsCorrectionMethod:"00541100",AttenuationCorrectionMethod:"00541101",DecayCorrection:"00541102",ReconstructionMethod:"00541103",DetectorLinesOfResponseUsed:"00541104",ScatterCorrectionMethod:"00541105",AxialAcceptance:"00541200",AxialMash:"00541201",TransverseMash:"00541202",DetectorElementSize:"00541203",CoincidenceWindowWidth:"00541210",SecondaryCountsType:"00541220",FrameReferenceTime:"00541300",PrimaryPromptsCountsAccumulated:"00541310",SecondaryCountsAccumulated:"00541311",SliceSensitivityFactor:"00541320",DecayFactor:"00541321",DoseCalibrationFactor:"00541322",ScatterFractionFactor:"00541323",DeadTimeFactor:"00541324",ImageIndex:"00541330",CountsIncluded:"00541400",DeadTimeCorrectionFlag:"00541401",HistogramSequence:"00603000",HistogramNumberOfBins:"00603002",HistogramFirstBinValue:"00603004",HistogramLastBinValue:"00603006",HistogramBinWidth:"00603008",HistogramExplanation:"00603010",HistogramData:"00603020",SegmentationType:"00620001",SegmentSequence:"00620002",SegmentedPropertyCategoryCodeSequence:"00620003",SegmentNumber:"00620004",SegmentLabel:"00620005",SegmentDescription:"00620006",SegmentationAlgorithmIdentificationSequence:"00620007",SegmentAlgorithmType:"00620008",SegmentAlgorithmName:"00620009",SegmentIdentificationSequence:"0062000A",ReferencedSegmentNumber:"0062000B",RecommendedDisplayGrayscaleValue:"0062000C",RecommendedDisplayCIELabValue:"0062000D",MaximumFractionalValue:"0062000E",SegmentedPropertyTypeCodeSequence:"0062000F",SegmentationFractionalType:"00620010",SegmentedPropertyTypeModifierCodeSequence:"00620011",UsedSegmentsSequence:"00620012",TrackingID:"00620020",TrackingUID:"00620021",DeformableRegistrationSequence:"00640002",SourceFrameOfReferenceUID:"00640003",DeformableRegistrationGridSequence:"00640005",GridDimensions:"00640007",GridResolution:"00640008",VectorGridData:"00640009",PreDeformationMatrixRegistrationSequence:"0064000F",PostDeformationMatrixRegistrationSequence:"00640010",NumberOfSurfaces:"00660001",SurfaceSequence:"00660002",SurfaceNumber:"00660003",SurfaceComments:"00660004",SurfaceProcessing:"00660009",SurfaceProcessingRatio:"0066000A",SurfaceProcessingDescription:"0066000B",RecommendedPresentationOpacity:"0066000C",RecommendedPresentationType:"0066000D",FiniteVolume:"0066000E",Manifold:"00660010",SurfacePointsSequence:"00660011",SurfacePointsNormalsSequence:"00660012",SurfaceMeshPrimitivesSequence:"00660013",NumberOfSurfacePoints:"00660015",PointCoordinatesData:"00660016",PointPositionAccuracy:"00660017",MeanPointDistance:"00660018",MaximumPointDistance:"00660019",PointsBoundingBoxCoordinates:"0066001A",AxisOfRotation:"0066001B",CenterOfRotation:"0066001C",NumberOfVectors:"0066001E",VectorDimensionality:"0066001F",VectorAccuracy:"00660020",VectorCoordinateData:"00660021",TrianglePointIndexList:"00660023",EdgePointIndexList:"00660024",VertexPointIndexList:"00660025",TriangleStripSequence:"00660026",TriangleFanSequence:"00660027",LineSequence:"00660028",PrimitivePointIndexList:"00660029",SurfaceCount:"0066002A",ReferencedSurfaceSequence:"0066002B",ReferencedSurfaceNumber:"0066002C",SegmentSurfaceGenerationAlgorithmIdentificationSequence:"0066002D",SegmentSurfaceSourceInstanceSequence:"0066002E",AlgorithmFamilyCodeSequence:"0066002F",AlgorithmNameCodeSequence:"00660030",AlgorithmVersion:"00660031",AlgorithmParameters:"00660032",FacetSequence:"00660034",SurfaceProcessingAlgorithmIdentificationSequence:"00660035",AlgorithmName:"00660036",RecommendedPointRadius:"00660037",RecommendedLineThickness:"00660038",LongPrimitivePointIndexList:"00660040",LongTrianglePointIndexList:"00660041",LongEdgePointIndexList:"00660042",LongVertexPointIndexList:"00660043",TrackSetSequence:"00660101",TrackSequence:"00660102",RecommendedDisplayCIELabValueList:"00660103",TrackingAlgorithmIdentificationSequence:"00660104",TrackSetNumber:"00660105",TrackSetLabel:"00660106",TrackSetDescription:"00660107",TrackSetAnatomicalTypeCodeSequence:"00660108",MeasurementsSequence:"00660121",TrackSetStatisticsSequence:"00660124",FloatingPointValues:"00660125",TrackPointIndexList:"00660129",TrackStatisticsSequence:"00660130",MeasurementValuesSequence:"00660132",DiffusionAcquisitionCodeSequence:"00660133",DiffusionModelCodeSequence:"00660134",ImplantSize:"00686210",ImplantTemplateVersion:"00686221",ReplacedImplantTemplateSequence:"00686222",ImplantType:"00686223",DerivationImplantTemplateSequence:"00686224",OriginalImplantTemplateSequence:"00686225",EffectiveDateTime:"00686226",ImplantTargetAnatomySequence:"00686230",InformationFromManufacturerSequence:"00686260",NotificationFromManufacturerSequence:"00686265",InformationIssueDateTime:"00686270",InformationSummary:"00686280",ImplantRegulatoryDisapprovalCodeSequence:"006862A0",OverallTemplateSpatialTolerance:"006862A5",HPGLDocumentSequence:"006862C0",HPGLDocumentID:"006862D0",HPGLDocumentLabel:"006862D5",ViewOrientationCodeSequence:"006862E0",ViewOrientationModifierCodeSequence:"006862F0",HPGLDocumentScaling:"006862F2",HPGLDocument:"00686300",HPGLContourPenNumber:"00686310",HPGLPenSequence:"00686320",HPGLPenNumber:"00686330",HPGLPenLabel:"00686340",HPGLPenDescription:"00686345",RecommendedRotationPoint:"00686346",BoundingRectangle:"00686347","00686350":"ImplantTemplate3DModelSurfaceNumber",SurfaceModelDescriptionSequence:"00686360",SurfaceModelLabel:"00686380",SurfaceModelScalingFactor:"00686390",MaterialsCodeSequence:"006863A0",CoatingMaterialsCodeSequence:"006863A4",ImplantTypeCodeSequence:"006863A8",FixationMethodCodeSequence:"006863AC",MatingFeatureSetsSequence:"006863B0",MatingFeatureSetID:"006863C0",MatingFeatureSetLabel:"006863D0",MatingFeatureSequence:"006863E0",MatingFeatureID:"006863F0",MatingFeatureDegreeOfFreedomSequence:"00686400",DegreeOfFreedomID:"00686410",DegreeOfFreedomType:"00686420",TwoDMatingFeatureCoordinatesSequence:"00686430",ReferencedHPGLDocumentID:"00686440",TwoDMatingPoint:"00686450",TwoDMatingAxes:"00686460",TwoDDegreeOfFreedomSequence:"00686470",ThreeDDegreeOfFreedomAxis:"00686490",RangeOfFreedom:"006864A0",ThreeDMatingPoint:"006864C0",ThreeDMatingAxes:"006864D0",TwoDDegreeOfFreedomAxis:"006864F0",PlanningLandmarkPointSequence:"00686500",PlanningLandmarkLineSequence:"00686510",PlanningLandmarkPlaneSequence:"00686520",PlanningLandmarkID:"00686530",PlanningLandmarkDescription:"00686540",PlanningLandmarkIdentificationCodeSequence:"00686545",TwoDPointCoordinatesSequence:"00686550",TwoDPointCoordinates:"00686560",ThreeDPointCoordinates:"00686590",TwoDLineCoordinatesSequence:"006865A0",TwoDLineCoordinates:"006865B0",ThreeDLineCoordinates:"006865D0",TwoDPlaneCoordinatesSequence:"006865E0",TwoDPlaneIntersection:"006865F0",ThreeDPlaneOrigin:"00686610",ThreeDPlaneNormal:"00686620",ModelModification:"00687001",ModelMirroring:"00687002",ModelUsageCodeSequence:"00687003",GraphicAnnotationSequence:"00700001",GraphicLayer:"00700002",BoundingBoxAnnotationUnits:"00700003",AnchorPointAnnotationUnits:"00700004",GraphicAnnotationUnits:"00700005",UnformattedTextValue:"00700006",TextObjectSequence:"00700008",GraphicObjectSequence:"00700009",BoundingBoxTopLeftHandCorner:"00700010",BoundingBoxBottomRightHandCorner:"00700011",BoundingBoxTextHorizontalJustification:"00700012",AnchorPoint:"00700014",AnchorPointVisibility:"00700015",GraphicDimensions:"00700020",NumberOfGraphicPoints:"00700021",GraphicData:"00700022",GraphicType:"00700023",GraphicFilled:"00700024",ImageRotationRetired:"00700040",ImageHorizontalFlip:"00700041",ImageRotation:"00700042",DisplayedAreaTopLeftHandCornerTrial:"00700050",DisplayedAreaBottomRightHandCornerTrial:"00700051",DisplayedAreaTopLeftHandCorner:"00700052",DisplayedAreaBottomRightHandCorner:"00700053",DisplayedAreaSelectionSequence:"0070005A",GraphicLayerSequence:"00700060",GraphicLayerOrder:"00700062",GraphicLayerRecommendedDisplayGrayscaleValue:"00700066",GraphicLayerRecommendedDisplayRGBValue:"00700067",GraphicLayerDescription:"00700068",ContentLabel:"00700080",ContentDescription:"00700081",PresentationCreationDate:"00700082",PresentationCreationTime:"00700083",ContentCreatorName:"00700084",ContentCreatorIdentificationCodeSequence:"00700086",AlternateContentDescriptionSequence:"00700087",PresentationSizeMode:"00700100",PresentationPixelSpacing:"00700101",PresentationPixelAspectRatio:"00700102",PresentationPixelMagnificationRatio:"00700103",GraphicGroupLabel:"00700207",GraphicGroupDescription:"00700208",CompoundGraphicSequence:"00700209",CompoundGraphicInstanceID:"00700226",FontName:"00700227",FontNameType:"00700228",CSSFontName:"00700229",RotationAngle:"00700230",TextStyleSequence:"00700231",LineStyleSequence:"00700232",FillStyleSequence:"00700233",GraphicGroupSequence:"00700234",TextColorCIELabValue:"00700241",HorizontalAlignment:"00700242",VerticalAlignment:"00700243",ShadowStyle:"00700244",ShadowOffsetX:"00700245",ShadowOffsetY:"00700246",ShadowColorCIELabValue:"00700247",Underlined:"00700248",Bold:"00700249",Italic:"00700250",PatternOnColorCIELabValue:"00700251",PatternOffColorCIELabValue:"00700252",LineThickness:"00700253",LineDashingStyle:"00700254",LinePattern:"00700255",FillPattern:"00700256",FillMode:"00700257",ShadowOpacity:"00700258",GapLength:"00700261",DiameterOfVisibility:"00700262",RotationPoint:"00700273",TickAlignment:"00700274",ShowTickLabel:"00700278",TickLabelAlignment:"00700279",CompoundGraphicUnits:"00700282",PatternOnOpacity:"00700284",PatternOffOpacity:"00700285",MajorTicksSequence:"00700287",TickPosition:"00700288",TickLabel:"00700289",CompoundGraphicType:"00700294",GraphicGroupID:"00700295",ShapeType:"00700306",RegistrationSequence:"00700308",MatrixRegistrationSequence:"00700309",MatrixSequence:"0070030A",FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix:"0070030B",FrameOfReferenceTransformationMatrixType:"0070030C",RegistrationTypeCodeSequence:"0070030D",FiducialDescription:"0070030F",FiducialIdentifier:"00700310",FiducialIdentifierCodeSequence:"00700311",ContourUncertaintyRadius:"00700312",UsedFiducialsSequence:"00700314",GraphicCoordinatesDataSequence:"00700318",FiducialUID:"0070031A",ReferencedFiducialUID:"0070031B",FiducialSetSequence:"0070031C",FiducialSequence:"0070031E",FiducialsPropertyCategoryCodeSequence:"0070031F",GraphicLayerRecommendedDisplayCIELabValue:"00700401",BlendingSequence:"00700402",RelativeOpacity:"00700403",ReferencedSpatialRegistrationSequence:"00700404",BlendingPosition:"00700405",PresentationDisplayCollectionUID:"00701101",PresentationSequenceCollectionUID:"00701102",PresentationSequencePositionIndex:"00701103",RenderedImageReferenceSequence:"00701104",VolumetricPresentationStateInputSequence:"00701201",PresentationInputType:"00701202",InputSequencePositionIndex:"00701203",Crop:"00701204",CroppingSpecificationIndex:"00701205",CompositingMethod:"00701206",VolumetricPresentationInputNumber:"00701207",ImageVolumeGeometry:"00701208",VolumetricPresentationInputSetUID:"00701209",VolumetricPresentationInputSetSequence:"0070120A",GlobalCrop:"0070120B",GlobalCroppingSpecificationIndex:"0070120C",RenderingMethod:"0070120D",VolumeCroppingSequence:"00701301",VolumeCroppingMethod:"00701302",BoundingBoxCrop:"00701303",ObliqueCroppingPlaneSequence:"00701304",Plane:"00701305",PlaneNormal:"00701306",CroppingSpecificationNumber:"00701309",MultiPlanarReconstructionStyle:"00701501",MPRThicknessType:"00701502",MPRSlabThickness:"00701503",MPRTopLeftHandCorner:"00701505",MPRViewWidthDirection:"00701507",MPRViewWidth:"00701508",NumberOfVolumetricCurvePoints:"0070150C",VolumetricCurvePoints:"0070150D",MPRViewHeightDirection:"00701511",MPRViewHeight:"00701512",RenderProjection:"00701602",ViewpointPosition:"00701603",ViewpointLookAtPoint:"00701604",ViewpointUpDirection:"00701605",RenderFieldOfView:"00701606",SamplingStepSize:"00701607",ShadingStyle:"00701701",AmbientReflectionIntensity:"00701702",LightDirection:"00701703",DiffuseReflectionIntensity:"00701704",SpecularReflectionIntensity:"00701705",Shininess:"00701706",PresentationStateClassificationComponentSequence:"00701801",ComponentType:"00701802",ComponentInputSequence:"00701803",VolumetricPresentationInputIndex:"00701804",PresentationStateCompositorComponentSequence:"00701805",WeightingTransferFunctionSequence:"00701806",WeightingLookupTableDescriptor:"00701807",WeightingLookupTableData:"00701808",VolumetricAnnotationSequence:"00701901",ReferencedStructuredContextSequence:"00701903",ReferencedContentItem:"00701904",VolumetricPresentationInputAnnotationSequence:"00701905",AnnotationClipping:"00701907",PresentationAnimationStyle:"00701A01",RecommendedAnimationRate:"00701A03",AnimationCurveSequence:"00701A04",AnimationStepSize:"00701A05",SwivelRange:"00701A06",VolumetricCurveUpDirections:"00701A07",VolumeStreamSequence:"00701A08",RGBATransferFunctionDescription:"00701A09",AdvancedBlendingSequence:"00701B01",BlendingInputNumber:"00701B02",BlendingDisplayInputSequence:"00701B03",BlendingDisplaySequence:"00701B04",BlendingMode:"00701B06",TimeSeriesBlending:"00701B07",GeometryForDisplay:"00701B08",ThresholdSequence:"00701B11",ThresholdValueSequence:"00701B12",ThresholdType:"00701B13",ThresholdValue:"00701B14",HangingProtocolName:"00720002",HangingProtocolDescription:"00720004",HangingProtocolLevel:"00720006",HangingProtocolCreator:"00720008",HangingProtocolCreationDateTime:"0072000A",HangingProtocolDefinitionSequence:"0072000C",HangingProtocolUserIdentificationCodeSequence:"0072000E",HangingProtocolUserGroupName:"00720010",SourceHangingProtocolSequence:"00720012",NumberOfPriorsReferenced:"00720014",ImageSetsSequence:"00720020",ImageSetSelectorSequence:"00720022",ImageSetSelectorUsageFlag:"00720024",SelectorAttribute:"00720026",SelectorValueNumber:"00720028",TimeBasedImageSetsSequence:"00720030",ImageSetNumber:"00720032",ImageSetSelectorCategory:"00720034",RelativeTime:"00720038",RelativeTimeUnits:"0072003A",AbstractPriorValue:"0072003C",AbstractPriorCodeSequence:"0072003E",ImageSetLabel:"00720040",SelectorAttributeVR:"00720050",SelectorSequencePointer:"00720052",SelectorSequencePointerPrivateCreator:"00720054",SelectorAttributePrivateCreator:"00720056",SelectorAEValue:"0072005E",SelectorASValue:"0072005F",SelectorATValue:"00720060",SelectorDAValue:"00720061",SelectorCSValue:"00720062",SelectorDTValue:"00720063",SelectorISValue:"00720064",SelectorOBValue:"00720065",SelectorLOValue:"00720066",SelectorOFValue:"00720067",SelectorLTValue:"00720068",SelectorOWValue:"00720069",SelectorPNValue:"0072006A",SelectorTMValue:"0072006B",SelectorSHValue:"0072006C",SelectorUNValue:"0072006D",SelectorSTValue:"0072006E",SelectorUCValue:"0072006F",SelectorUTValue:"00720070",SelectorURValue:"00720071",SelectorDSValue:"00720072",SelectorODValue:"00720073",SelectorFDValue:"00720074",SelectorOLValue:"00720075",SelectorFLValue:"00720076",SelectorULValue:"00720078",SelectorUSValue:"0072007A",SelectorSLValue:"0072007C",SelectorSSValue:"0072007E",SelectorUIValue:"0072007F",SelectorCodeSequenceValue:"00720080",NumberOfScreens:"00720100",NominalScreenDefinitionSequence:"00720102",NumberOfVerticalPixels:"00720104",NumberOfHorizontalPixels:"00720106",DisplayEnvironmentSpatialPosition:"00720108",ScreenMinimumGrayscaleBitDepth:"0072010A",ScreenMinimumColorBitDepth:"0072010C",ApplicationMaximumRepaintTime:"0072010E",DisplaySetsSequence:"00720200",DisplaySetNumber:"00720202",DisplaySetLabel:"00720203",DisplaySetPresentationGroup:"00720204",DisplaySetPresentationGroupDescription:"00720206",PartialDataDisplayHandling:"00720208",SynchronizedScrollingSequence:"00720210",DisplaySetScrollingGroup:"00720212",NavigationIndicatorSequence:"00720214",NavigationDisplaySet:"00720216",ReferenceDisplaySets:"00720218",ImageBoxesSequence:"00720300",ImageBoxNumber:"00720302",ImageBoxLayoutType:"00720304",ImageBoxTileHorizontalDimension:"00720306",ImageBoxTileVerticalDimension:"00720308",ImageBoxScrollDirection:"00720310",ImageBoxSmallScrollType:"00720312",ImageBoxSmallScrollAmount:"00720314",ImageBoxLargeScrollType:"00720316",ImageBoxLargeScrollAmount:"00720318",ImageBoxOverlapPriority:"00720320",CineRelativeToRealTime:"00720330",FilterOperationsSequence:"00720400",FilterByCategory:"00720402",FilterByAttributePresence:"00720404",FilterByOperator:"00720406",StructuredDisplayBackgroundCIELabValue:"00720420",EmptyImageBoxCIELabValue:"00720421",StructuredDisplayImageBoxSequence:"00720422",StructuredDisplayTextBoxSequence:"00720424",ReferencedFirstFrameSequence:"00720427",ImageBoxSynchronizationSequence:"00720430",SynchronizedImageBoxList:"00720432",TypeOfSynchronization:"00720434",BlendingOperationType:"00720500",ReformattingOperationType:"00720510",ReformattingThickness:"00720512",ReformattingInterval:"00720514",ReformattingOperationInitialViewDirection:"00720516",ThreeDRenderingType:"00720520",SortingOperationsSequence:"00720600",SortByCategory:"00720602",SortingDirection:"00720604",DisplaySetPatientOrientation:"00720700",VOIType:"00720702",PseudoColorType:"00720704",PseudoColorPaletteInstanceReferenceSequence:"00720705",ShowGrayscaleInverted:"00720706",ShowImageTrueSizeFlag:"00720710",ShowGraphicAnnotationFlag:"00720712",ShowPatientDemographicsFlag:"00720714",ShowAcquisitionTechniquesFlag:"00720716",DisplaySetHorizontalJustification:"00720717",DisplaySetVerticalJustification:"00720718",ContinuationStartMeterset:"00740120",ContinuationEndMeterset:"00740121",ProcedureStepState:"00741000",ProcedureStepProgressInformationSequence:"00741002",ProcedureStepProgress:"00741004",ProcedureStepProgressDescription:"00741006",ProcedureStepProgressParametersSequence:"00741007",ProcedureStepCommunicationsURISequence:"00741008",ContactURI:"0074100A",ContactDisplayName:"0074100C",ProcedureStepDiscontinuationReasonCodeSequence:"0074100E",BeamTaskSequence:"00741020",BeamTaskType:"00741022",BeamOrderIndexTrial:"00741024",AutosequenceFlag:"00741025",TableTopVerticalAdjustedPosition:"00741026",TableTopLongitudinalAdjustedPosition:"00741027",TableTopLateralAdjustedPosition:"00741028",PatientSupportAdjustedAngle:"0074102A",TableTopEccentricAdjustedAngle:"0074102B",TableTopPitchAdjustedAngle:"0074102C",TableTopRollAdjustedAngle:"0074102D",DeliveryVerificationImageSequence:"00741030",VerificationImageTiming:"00741032",DoubleExposureFlag:"00741034",DoubleExposureOrdering:"00741036",DoubleExposureMetersetTrial:"00741038",DoubleExposureFieldDeltaTrial:"0074103A",RelatedReferenceRTImageSequence:"00741040",GeneralMachineVerificationSequence:"00741042",ConventionalMachineVerificationSequence:"00741044",IonMachineVerificationSequence:"00741046",FailedAttributesSequence:"00741048",OverriddenAttributesSequence:"0074104A",ConventionalControlPointVerificationSequence:"0074104C",IonControlPointVerificationSequence:"0074104E",AttributeOccurrenceSequence:"00741050",AttributeOccurrencePointer:"00741052",AttributeItemSelector:"00741054",AttributeOccurrencePrivateCreator:"00741056",SelectorSequencePointerItems:"00741057",ScheduledProcedureStepPriority:"00741200",WorklistLabel:"00741202",ProcedureStepLabel:"00741204",ScheduledProcessingParametersSequence:"00741210",PerformedProcessingParametersSequence:"00741212",UnifiedProcedureStepPerformedProcedureSequence:"00741216",RelatedProcedureStepSequence:"00741220",ProcedureStepRelationshipType:"00741222",ReplacedProcedureStepSequence:"00741224",DeletionLock:"00741230",ReceivingAE:"00741234",RequestingAE:"00741236",ReasonForCancellation:"00741238",SCPStatus:"00741242",SubscriptionListStatus:"00741244",UnifiedProcedureStepListStatus:"00741246",BeamOrderIndex:"00741324",DoubleExposureMeterset:"00741338",DoubleExposureFieldDelta:"0074133A",BrachyTaskSequence:"00741401",ContinuationStartTotalReferenceAirKerma:"00741402",ContinuationEndTotalReferenceAirKerma:"00741403",ContinuationPulseNumber:"00741404",ChannelDeliveryOrderSequence:"00741405",ReferencedChannelNumber:"00741406",StartCumulativeTimeWeight:"00741407",EndCumulativeTimeWeight:"00741408",OmittedChannelSequence:"00741409",ReasonForChannelOmission:"0074140A",ReasonForChannelOmissionDescription:"0074140B",ChannelDeliveryOrderIndex:"0074140C",ChannelDeliveryContinuationSequence:"0074140D",OmittedApplicationSetupSequence:"0074140E",ImplantAssemblyTemplateName:"00760001",ImplantAssemblyTemplateIssuer:"00760003",ImplantAssemblyTemplateVersion:"00760006",ReplacedImplantAssemblyTemplateSequence:"00760008",ImplantAssemblyTemplateType:"0076000A",OriginalImplantAssemblyTemplateSequence:"0076000C",DerivationImplantAssemblyTemplateSequence:"0076000E",ImplantAssemblyTemplateTargetAnatomySequence:"00760010",ProcedureTypeCodeSequence:"00760020",SurgicalTechnique:"00760030",ComponentTypesSequence:"00760032",ComponentTypeCodeSequence:"00760034",ExclusiveComponentType:"00760036",MandatoryComponentType:"00760038",ComponentSequence:"00760040",ComponentID:"00760055",ComponentAssemblySequence:"00760060","00760070":"Component1ReferencedID","00760080":"Component1ReferencedMatingFeatureSetID","00760090":"Component1ReferencedMatingFeatureID","007600A0":"Component2ReferencedID","007600B0":"Component2ReferencedMatingFeatureSetID","007600C0":"Component2ReferencedMatingFeatureID",ImplantTemplateGroupName:"00780001",ImplantTemplateGroupDescription:"00780010",ImplantTemplateGroupIssuer:"00780020",ImplantTemplateGroupVersion:"00780024",ReplacedImplantTemplateGroupSequence:"00780026",ImplantTemplateGroupTargetAnatomySequence:"00780028",ImplantTemplateGroupMembersSequence:"0078002A",ImplantTemplateGroupMemberID:"0078002E",ThreeDImplantTemplateGroupMemberMatchingPoint:"00780050",ThreeDImplantTemplateGroupMemberMatchingAxes:"00780060","00780070":"ImplantTemplateGroupMemberMatching2DCoordinatesSequence",TwoDImplantTemplateGroupMemberMatchingPoint:"00780090",TwoDImplantTemplateGroupMemberMatchingAxes:"007800A0",ImplantTemplateGroupVariationDimensionSequence:"007800B0",ImplantTemplateGroupVariationDimensionName:"007800B2",ImplantTemplateGroupVariationDimensionRankSequence:"007800B4",ReferencedImplantTemplateGroupMemberID:"007800B6",ImplantTemplateGroupVariationDimensionRank:"007800B8",SurfaceScanAcquisitionTypeCodeSequence:"00800001",SurfaceScanModeCodeSequence:"00800002",RegistrationMethodCodeSequence:"00800003",ShotDurationTime:"00800004",ShotOffsetTime:"00800005",SurfacePointPresentationValueData:"00800006",SurfacePointColorCIELabValueData:"00800007",UVMappingSequence:"00800008",TextureLabel:"00800009",UValueData:"00800010",VValueData:"00800011",ReferencedTextureSequence:"00800012",ReferencedSurfaceDataSequence:"00800013",AssessmentSummary:"00820001",AssessmentSummaryDescription:"00820003",AssessedSOPInstanceSequence:"00820004",ReferencedComparisonSOPInstanceSequence:"00820005",NumberOfAssessmentObservations:"00820006",AssessmentObservationsSequence:"00820007",ObservationSignificance:"00820008",ObservationDescription:"0082000A",StructuredConstraintObservationSequence:"0082000C",AssessedAttributeValueSequence:"00820010",AssessmentSetID:"00820016",AssessmentRequesterSequence:"00820017",SelectorAttributeName:"00820018",SelectorAttributeKeyword:"00820019",AssessmentTypeCodeSequence:"00820021",ObservationBasisCodeSequence:"00820022",AssessmentLabel:"00820023",ConstraintType:"00820032",SpecificationSelectionGuidance:"00820033",ConstraintValueSequence:"00820034",RecommendedDefaultValueSequence:"00820035",ConstraintViolationSignificance:"00820036",ConstraintViolationCondition:"00820037",ModifiableConstraintFlag:"00820038",StorageMediaFileSetID:"00880130",StorageMediaFileSetUID:"00880140",IconImageSequence:"00880200",TopicTitle:"00880904",TopicSubject:"00880906",TopicAuthor:"00880910",TopicKeywords:"00880912",SOPInstanceStatus:"01000410",SOPAuthorizationDateTime:"01000420",SOPAuthorizationComment:"01000424",AuthorizationEquipmentCertificationNumber:"01000426",MACIDNumber:"04000005",MACCalculationTransferSyntaxUID:"04000010",MACAlgorithm:"04000015",DataElementsSigned:"04000020",DigitalSignatureUID:"04000100",DigitalSignatureDateTime:"04000105",CertificateType:"04000110",CertificateOfSigner:"04000115",Signature:"04000120",CertifiedTimestampType:"04000305",CertifiedTimestamp:"04000310","":"04000315",DigitalSignaturePurposeCodeSequence:"04000401",ReferencedDigitalSignatureSequence:"04000402",ReferencedSOPInstanceMACSequence:"04000403",MAC:"04000404",EncryptedAttributesSequence:"04000500",EncryptedContentTransferSyntaxUID:"04000510",EncryptedContent:"04000520",ModifiedAttributesSequence:"04000550",OriginalAttributesSequence:"04000561",AttributeModificationDateTime:"04000562",ModifyingSystem:"04000563",SourceOfPreviousValues:"04000564",ReasonForTheAttributeModification:"04000565",InstanceOriginStatus:"04000600",NumberOfCopies:"20000010",PrinterConfigurationSequence:"2000001E",PrintPriority:"20000020",MediumType:"20000030",FilmDestination:"20000040",FilmSessionLabel:"20000050",MemoryAllocation:"20000060",MaximumMemoryAllocation:"20000061",ColorImagePrintingFlag:"20000062",CollationFlag:"20000063",AnnotationFlag:"20000065",ImageOverlayFlag:"20000067",PresentationLUTFlag:"20000069",ImageBoxPresentationLUTFlag:"2000006A",MemoryBitDepth:"200000A0",PrintingBitDepth:"200000A1",MediaInstalledSequence:"200000A2",OtherMediaAvailableSequence:"200000A4",SupportedImageDisplayFormatsSequence:"200000A8",ReferencedFilmBoxSequence:"20000500",ReferencedStoredPrintSequence:"20000510",ImageDisplayFormat:"20100010",AnnotationDisplayFormatID:"20100030",FilmOrientation:"20100040",FilmSizeID:"20100050",PrinterResolutionID:"20100052",DefaultPrinterResolutionID:"20100054",MagnificationType:"20100060",SmoothingType:"20100080",DefaultMagnificationType:"201000A6",OtherMagnificationTypesAvailable:"201000A7",DefaultSmoothingType:"201000A8",OtherSmoothingTypesAvailable:"201000A9",BorderDensity:"20100100",EmptyImageDensity:"20100110",MinDensity:"20100120",MaxDensity:"20100130",Trim:"20100140",ConfigurationInformation:"20100150",ConfigurationInformationDescription:"20100152",MaximumCollatedFilms:"20100154",Illumination:"2010015E",ReflectedAmbientLight:"20100160",PrinterPixelSpacing:"20100376",ReferencedFilmSessionSequence:"20100500",ReferencedImageBoxSequence:"20100510",ReferencedBasicAnnotationBoxSequence:"20100520",ImageBoxPosition:"20200010",Polarity:"20200020",RequestedImageSize:"20200030",RequestedDecimateCropBehavior:"20200040",RequestedResolutionID:"20200050",RequestedImageSizeFlag:"202000A0",DecimateCropResult:"202000A2",BasicGrayscaleImageSequence:"20200110",BasicColorImageSequence:"20200111",ReferencedImageOverlayBoxSequence:"20200130",ReferencedVOILUTBoxSequence:"20200140",AnnotationPosition:"20300010",TextString:"20300020",ReferencedOverlayPlaneSequence:"20400010",ReferencedOverlayPlaneGroups:"20400011",OverlayPixelDataSequence:"20400020",OverlayMagnificationType:"20400060",OverlaySmoothingType:"20400070",OverlayOrImageMagnification:"20400072",MagnifyToNumberOfColumns:"20400074",OverlayForegroundDensity:"20400080",OverlayBackgroundDensity:"20400082",OverlayMode:"20400090",ThresholdDensity:"20400100",ReferencedImageBoxSequenceRetired:"20400500",PresentationLUTSequence:"20500010",PresentationLUTShape:"20500020",ReferencedPresentationLUTSequence:"20500500",PrintJobID:"21000010",ExecutionStatus:"21000020",ExecutionStatusInfo:"21000030",CreationDate:"21000040",CreationTime:"21000050",Originator:"21000070",DestinationAE:"21000140",OwnerID:"21000160",NumberOfFilms:"21000170",ReferencedPrintJobSequencePullStoredPrint:"21000500",PrinterStatus:"21100010",PrinterStatusInfo:"21100020",PrinterName:"21100030",PrintQueueID:"21100099",QueueStatus:"21200010",PrintJobDescriptionSequence:"21200050",ReferencedPrintJobSequence:"21200070",PrintManagementCapabilitiesSequence:"21300010",PrinterCharacteristicsSequence:"21300015",FilmBoxContentSequence:"21300030",ImageBoxContentSequence:"21300040",AnnotationContentSequence:"21300050",ImageOverlayBoxContentSequence:"21300060",PresentationLUTContentSequence:"21300080",ProposedStudySequence:"213000A0",OriginalImageSequence:"213000C0",LabelUsingInformationExtractedFromInstances:"22000001",LabelText:"22000002",LabelStyleSelection:"22000003",MediaDisposition:"22000004",BarcodeValue:"22000005",BarcodeSymbology:"22000006",AllowMediaSplitting:"22000007",IncludeNonDICOMObjects:"22000008",IncludeDisplayApplication:"22000009",PreserveCompositeInstancesAfterMediaCreation:"2200000A",TotalNumberOfPiecesOfMediaCreated:"2200000B",RequestedMediaApplicationProfile:"2200000C",ReferencedStorageMediaSequence:"2200000D",FailureAttributes:"2200000E",AllowLossyCompression:"2200000F",RequestPriority:"22000020",RTImageLabel:"30020002",RTImageName:"30020003",RTImageDescription:"30020004",ReportedValuesOrigin:"3002000A",RTImagePlane:"3002000C",XRayImageReceptorTranslation:"3002000D",XRayImageReceptorAngle:"3002000E",RTImageOrientation:"30020010",ImagePlanePixelSpacing:"30020011",RTImagePosition:"30020012",RadiationMachineName:"30020020",RadiationMachineSAD:"30020022",RadiationMachineSSD:"30020024",RTImageSID:"30020026",SourceToReferenceObjectDistance:"30020028",FractionNumber:"30020029",ExposureSequence:"30020030",MetersetExposure:"30020032",DiaphragmPosition:"30020034",FluenceMapSequence:"30020040",FluenceDataSource:"30020041",FluenceDataScale:"30020042",PrimaryFluenceModeSequence:"30020050",FluenceMode:"30020051",FluenceModeID:"30020052",DVHType:"30040001",DoseUnits:"30040002",DoseType:"30040004",SpatialTransformOfDose:"30040005",DoseComment:"30040006",NormalizationPoint:"30040008",DoseSummationType:"3004000A",GridFrameOffsetVector:"3004000C",DoseGridScaling:"3004000E",RTDoseROISequence:"30040010",DoseValue:"30040012",TissueHeterogeneityCorrection:"30040014",DVHNormalizationPoint:"30040040",DVHNormalizationDoseValue:"30040042",DVHSequence:"30040050",DVHDoseScaling:"30040052",DVHVolumeUnits:"30040054",DVHNumberOfBins:"30040056",DVHData:"30040058",DVHReferencedROISequence:"30040060",DVHROIContributionType:"30040062",DVHMinimumDose:"30040070",DVHMaximumDose:"30040072",DVHMeanDose:"30040074",StructureSetLabel:"30060002",StructureSetName:"30060004",StructureSetDescription:"30060006",StructureSetDate:"30060008",StructureSetTime:"30060009",ReferencedFrameOfReferenceSequence:"30060010",RTReferencedStudySequence:"30060012",RTReferencedSeriesSequence:"30060014",ContourImageSequence:"30060016",PredecessorStructureSetSequence:"30060018",StructureSetROISequence:"30060020",ROINumber:"30060022",ReferencedFrameOfReferenceUID:"30060024",ROIName:"30060026",ROIDescription:"30060028",ROIDisplayColor:"3006002A",ROIVolume:"3006002C",RTRelatedROISequence:"30060030",RTROIRelationship:"30060033",ROIGenerationAlgorithm:"30060036",ROIGenerationDescription:"30060038",ROIContourSequence:"30060039",ContourSequence:"30060040",ContourGeometricType:"30060042",ContourSlabThickness:"30060044",ContourOffsetVector:"30060045",NumberOfContourPoints:"30060046",ContourNumber:"30060048",AttachedContours:"30060049",ContourData:"30060050",RTROIObservationsSequence:"30060080",ObservationNumber:"30060082",ReferencedROINumber:"30060084",ROIObservationLabel:"30060085",RTROIIdentificationCodeSequence:"30060086",ROIObservationDescription:"30060088",RelatedRTROIObservationsSequence:"300600A0",RTROIInterpretedType:"300600A4",ROIInterpreter:"300600A6",ROIPhysicalPropertiesSequence:"300600B0",ROIPhysicalProperty:"300600B2",ROIPhysicalPropertyValue:"300600B4",ROIElementalCompositionSequence:"300600B6",ROIElementalCompositionAtomicNumber:"300600B7",ROIElementalCompositionAtomicMassFraction:"300600B8",AdditionalRTROIIdentificationCodeSequence:"300600B9",FrameOfReferenceRelationshipSequence:"300600C0",RelatedFrameOfReferenceUID:"300600C2",FrameOfReferenceTransformationType:"300600C4",FrameOfReferenceTransformationMatrix:"300600C6",FrameOfReferenceTransformationComment:"300600C8",MeasuredDoseReferenceSequence:"30080010",MeasuredDoseDescription:"30080012",MeasuredDoseType:"30080014",MeasuredDoseValue:"30080016",TreatmentSessionBeamSequence:"30080020",TreatmentSessionIonBeamSequence:"30080021",CurrentFractionNumber:"30080022",TreatmentControlPointDate:"30080024",TreatmentControlPointTime:"30080025",TreatmentTerminationStatus:"3008002A",TreatmentTerminationCode:"3008002B",TreatmentVerificationStatus:"3008002C",ReferencedTreatmentRecordSequence:"30080030",SpecifiedPrimaryMeterset:"30080032",SpecifiedSecondaryMeterset:"30080033",DeliveredPrimaryMeterset:"30080036",DeliveredSecondaryMeterset:"30080037",SpecifiedTreatmentTime:"3008003A",DeliveredTreatmentTime:"3008003B",ControlPointDeliverySequence:"30080040",IonControlPointDeliverySequence:"30080041",SpecifiedMeterset:"30080042",DeliveredMeterset:"30080044",MetersetRateSet:"30080045",MetersetRateDelivered:"30080046",ScanSpotMetersetsDelivered:"30080047",DoseRateDelivered:"30080048",TreatmentSummaryCalculatedDoseReferenceSequence:"30080050",CumulativeDoseToDoseReference:"30080052",FirstTreatmentDate:"30080054",MostRecentTreatmentDate:"30080056",NumberOfFractionsDelivered:"3008005A",OverrideSequence:"30080060",ParameterSequencePointer:"30080061",OverrideParameterPointer:"30080062",ParameterItemIndex:"30080063",MeasuredDoseReferenceNumber:"30080064",ParameterPointer:"30080065",OverrideReason:"30080066",ParameterValueNumber:"30080067",CorrectedParameterSequence:"30080068",CorrectionValue:"3008006A",CalculatedDoseReferenceSequence:"30080070",CalculatedDoseReferenceNumber:"30080072",CalculatedDoseReferenceDescription:"30080074",CalculatedDoseReferenceDoseValue:"30080076",StartMeterset:"30080078",EndMeterset:"3008007A",ReferencedMeasuredDoseReferenceSequence:"30080080",ReferencedMeasuredDoseReferenceNumber:"30080082",ReferencedCalculatedDoseReferenceSequence:"30080090",ReferencedCalculatedDoseReferenceNumber:"30080092",BeamLimitingDeviceLeafPairsSequence:"300800A0",RecordedWedgeSequence:"300800B0",RecordedCompensatorSequence:"300800C0",RecordedBlockSequence:"300800D0",TreatmentSummaryMeasuredDoseReferenceSequence:"300800E0",RecordedSnoutSequence:"300800F0",RecordedRangeShifterSequence:"300800F2",RecordedLateralSpreadingDeviceSequence:"300800F4",RecordedRangeModulatorSequence:"300800F6",RecordedSourceSequence:"30080100",SourceSerialNumber:"30080105",TreatmentSessionApplicationSetupSequence:"30080110",ApplicationSetupCheck:"30080116",RecordedBrachyAccessoryDeviceSequence:"30080120",ReferencedBrachyAccessoryDeviceNumber:"30080122",RecordedChannelSequence:"30080130",SpecifiedChannelTotalTime:"30080132",DeliveredChannelTotalTime:"30080134",SpecifiedNumberOfPulses:"30080136",DeliveredNumberOfPulses:"30080138",SpecifiedPulseRepetitionInterval:"3008013A",DeliveredPulseRepetitionInterval:"3008013C",RecordedSourceApplicatorSequence:"30080140",ReferencedSourceApplicatorNumber:"30080142",RecordedChannelShieldSequence:"30080150",ReferencedChannelShieldNumber:"30080152",BrachyControlPointDeliveredSequence:"30080160",SafePositionExitDate:"30080162",SafePositionExitTime:"30080164",SafePositionReturnDate:"30080166",SafePositionReturnTime:"30080168",PulseSpecificBrachyControlPointDeliveredSequence:"30080171",PulseNumber:"30080172",BrachyPulseControlPointDeliveredSequence:"30080173",CurrentTreatmentStatus:"30080200",TreatmentStatusComment:"30080202",FractionGroupSummarySequence:"30080220",ReferencedFractionNumber:"30080223",FractionGroupType:"30080224",BeamStopperPosition:"30080230",FractionStatusSummarySequence:"30080240",TreatmentDate:"30080250",TreatmentTime:"30080251",RTPlanLabel:"300A0002",RTPlanName:"300A0003",RTPlanDescription:"300A0004",RTPlanDate:"300A0006",RTPlanTime:"300A0007",TreatmentProtocols:"300A0009",PlanIntent:"300A000A",TreatmentSites:"300A000B",RTPlanGeometry:"300A000C",PrescriptionDescription:"300A000E",DoseReferenceSequence:"300A0010",DoseReferenceNumber:"300A0012",DoseReferenceUID:"300A0013",DoseReferenceStructureType:"300A0014",NominalBeamEnergyUnit:"300A0015",DoseReferenceDescription:"300A0016",DoseReferencePointCoordinates:"300A0018",NominalPriorDose:"300A001A",DoseReferenceType:"300A0020",ConstraintWeight:"300A0021",DeliveryWarningDose:"300A0022",DeliveryMaximumDose:"300A0023",TargetMinimumDose:"300A0025",TargetPrescriptionDose:"300A0026",TargetMaximumDose:"300A0027",TargetUnderdoseVolumeFraction:"300A0028",OrganAtRiskFullVolumeDose:"300A002A",OrganAtRiskLimitDose:"300A002B",OrganAtRiskMaximumDose:"300A002C",OrganAtRiskOverdoseVolumeFraction:"300A002D",ToleranceTableSequence:"300A0040",ToleranceTableNumber:"300A0042",ToleranceTableLabel:"300A0043",GantryAngleTolerance:"300A0044",BeamLimitingDeviceAngleTolerance:"300A0046",BeamLimitingDeviceToleranceSequence:"300A0048",BeamLimitingDevicePositionTolerance:"300A004A",SnoutPositionTolerance:"300A004B",PatientSupportAngleTolerance:"300A004C",TableTopEccentricAngleTolerance:"300A004E",TableTopPitchAngleTolerance:"300A004F",TableTopRollAngleTolerance:"300A0050",TableTopVerticalPositionTolerance:"300A0051",TableTopLongitudinalPositionTolerance:"300A0052",TableTopLateralPositionTolerance:"300A0053",RTPlanRelationship:"300A0055",FractionGroupSequence:"300A0070",FractionGroupNumber:"300A0071",FractionGroupDescription:"300A0072",NumberOfFractionsPlanned:"300A0078",NumberOfFractionPatternDigitsPerDay:"300A0079",RepeatFractionCycleLength:"300A007A",FractionPattern:"300A007B",NumberOfBeams:"300A0080",BeamDoseSpecificationPoint:"300A0082",ReferencedDoseReferenceUID:"300A0083",BeamDose:"300A0084",BeamMeterset:"300A0086",BeamDosePointDepth:"300A0088",BeamDosePointEquivalentDepth:"300A0089",BeamDosePointSSD:"300A008A",BeamDoseMeaning:"300A008B",BeamDoseVerificationControlPointSequence:"300A008C",AverageBeamDosePointDepth:"300A008D",AverageBeamDosePointEquivalentDepth:"300A008E",AverageBeamDosePointSSD:"300A008F",BeamDoseType:"300A0090",AlternateBeamDose:"300A0091",AlternateBeamDoseType:"300A0092",DepthValueAveragingFlag:"300A0093",BeamDosePointSourceToExternalContourDistance:"300A0094",NumberOfBrachyApplicationSetups:"300A00A0",BrachyApplicationSetupDoseSpecificationPoint:"300A00A2",BrachyApplicationSetupDose:"300A00A4",BeamSequence:"300A00B0",TreatmentMachineName:"300A00B2",PrimaryDosimeterUnit:"300A00B3",SourceAxisDistance:"300A00B4",BeamLimitingDeviceSequence:"300A00B6",RTBeamLimitingDeviceType:"300A00B8",SourceToBeamLimitingDeviceDistance:"300A00BA",IsocenterToBeamLimitingDeviceDistance:"300A00BB",NumberOfLeafJawPairs:"300A00BC",LeafPositionBoundaries:"300A00BE",BeamNumber:"300A00C0",BeamName:"300A00C2",BeamDescription:"300A00C3",BeamType:"300A00C4",BeamDeliveryDurationLimit:"300A00C5",RadiationType:"300A00C6",HighDoseTechniqueType:"300A00C7",ReferenceImageNumber:"300A00C8",PlannedVerificationImageSequence:"300A00CA",ImagingDeviceSpecificAcquisitionParameters:"300A00CC",TreatmentDeliveryType:"300A00CE",NumberOfWedges:"300A00D0",WedgeSequence:"300A00D1",WedgeNumber:"300A00D2",WedgeType:"300A00D3",WedgeID:"300A00D4",WedgeAngle:"300A00D5",WedgeFactor:"300A00D6",TotalWedgeTrayWaterEquivalentThickness:"300A00D7",WedgeOrientation:"300A00D8",IsocenterToWedgeTrayDistance:"300A00D9",SourceToWedgeTrayDistance:"300A00DA",WedgeThinEdgePosition:"300A00DB",BolusID:"300A00DC",BolusDescription:"300A00DD",EffectiveWedgeAngle:"300A00DE",NumberOfCompensators:"300A00E0",MaterialID:"300A00E1",TotalCompensatorTrayFactor:"300A00E2",CompensatorSequence:"300A00E3",CompensatorNumber:"300A00E4",CompensatorID:"300A00E5",SourceToCompensatorTrayDistance:"300A00E6",CompensatorRows:"300A00E7",CompensatorColumns:"300A00E8",CompensatorPixelSpacing:"300A00E9",CompensatorPosition:"300A00EA",CompensatorTransmissionData:"300A00EB",CompensatorThicknessData:"300A00EC",NumberOfBoli:"300A00ED",CompensatorType:"300A00EE",CompensatorTrayID:"300A00EF",NumberOfBlocks:"300A00F0",TotalBlockTrayFactor:"300A00F2",TotalBlockTrayWaterEquivalentThickness:"300A00F3",BlockSequence:"300A00F4",BlockTrayID:"300A00F5",SourceToBlockTrayDistance:"300A00F6",IsocenterToBlockTrayDistance:"300A00F7",BlockType:"300A00F8",AccessoryCode:"300A00F9",BlockDivergence:"300A00FA",BlockMountingPosition:"300A00FB",BlockNumber:"300A00FC",BlockName:"300A00FE",BlockThickness:"300A0100",BlockTransmission:"300A0102",BlockNumberOfPoints:"300A0104",BlockData:"300A0106",ApplicatorSequence:"300A0107",ApplicatorID:"300A0108",ApplicatorType:"300A0109",ApplicatorDescription:"300A010A",CumulativeDoseReferenceCoefficient:"300A010C",FinalCumulativeMetersetWeight:"300A010E",NumberOfControlPoints:"300A0110",ControlPointSequence:"300A0111",ControlPointIndex:"300A0112",NominalBeamEnergy:"300A0114",DoseRateSet:"300A0115",WedgePositionSequence:"300A0116",WedgePosition:"300A0118",BeamLimitingDevicePositionSequence:"300A011A",LeafJawPositions:"300A011C",GantryAngle:"300A011E",GantryRotationDirection:"300A011F",BeamLimitingDeviceAngle:"300A0120",BeamLimitingDeviceRotationDirection:"300A0121",PatientSupportAngle:"300A0122",PatientSupportRotationDirection:"300A0123",TableTopEccentricAxisDistance:"300A0124",TableTopEccentricAngle:"300A0125",TableTopEccentricRotationDirection:"300A0126",TableTopVerticalPosition:"300A0128",TableTopLongitudinalPosition:"300A0129",TableTopLateralPosition:"300A012A",IsocenterPosition:"300A012C",SurfaceEntryPoint:"300A012E",SourceToSurfaceDistance:"300A0130",AverageBeamDosePointSourceToExternalContourDistance:"300A0131",SourceToExternalContourDistance:"300A0132",ExternalContourEntryPoint:"300A0133",CumulativeMetersetWeight:"300A0134",TableTopPitchAngle:"300A0140",TableTopPitchRotationDirection:"300A0142",TableTopRollAngle:"300A0144",TableTopRollRotationDirection:"300A0146",HeadFixationAngle:"300A0148",GantryPitchAngle:"300A014A",GantryPitchRotationDirection:"300A014C",GantryPitchAngleTolerance:"300A014E",FixationEye:"300A0150",ChairHeadFramePosition:"300A0151",HeadFixationAngleTolerance:"300A0152",ChairHeadFramePositionTolerance:"300A0153",FixationLightAzimuthalAngleTolerance:"300A0154",FixationLightPolarAngleTolerance:"300A0155",PatientSetupSequence:"300A0180",PatientSetupNumber:"300A0182",PatientSetupLabel:"300A0183",PatientAdditionalPosition:"300A0184",FixationDeviceSequence:"300A0190",FixationDeviceType:"300A0192",FixationDeviceLabel:"300A0194",FixationDeviceDescription:"300A0196",FixationDevicePosition:"300A0198",FixationDevicePitchAngle:"300A0199",FixationDeviceRollAngle:"300A019A",ShieldingDeviceSequence:"300A01A0",ShieldingDeviceType:"300A01A2",ShieldingDeviceLabel:"300A01A4",ShieldingDeviceDescription:"300A01A6",ShieldingDevicePosition:"300A01A8",SetupTechnique:"300A01B0",SetupTechniqueDescription:"300A01B2",SetupDeviceSequence:"300A01B4",SetupDeviceType:"300A01B6",SetupDeviceLabel:"300A01B8",SetupDeviceDescription:"300A01BA",SetupDeviceParameter:"300A01BC",SetupReferenceDescription:"300A01D0",TableTopVerticalSetupDisplacement:"300A01D2",TableTopLongitudinalSetupDisplacement:"300A01D4",TableTopLateralSetupDisplacement:"300A01D6",BrachyTreatmentTechnique:"300A0200",BrachyTreatmentType:"300A0202",TreatmentMachineSequence:"300A0206",SourceSequence:"300A0210",SourceNumber:"300A0212",SourceType:"300A0214",SourceManufacturer:"300A0216",ActiveSourceDiameter:"300A0218",ActiveSourceLength:"300A021A",SourceModelID:"300A021B",SourceDescription:"300A021C",SourceEncapsulationNominalThickness:"300A0222",SourceEncapsulationNominalTransmission:"300A0224",SourceIsotopeName:"300A0226",SourceIsotopeHalfLife:"300A0228",SourceStrengthUnits:"300A0229",ReferenceAirKermaRate:"300A022A",SourceStrength:"300A022B",SourceStrengthReferenceDate:"300A022C",SourceStrengthReferenceTime:"300A022E",ApplicationSetupSequence:"300A0230",ApplicationSetupType:"300A0232",ApplicationSetupNumber:"300A0234",ApplicationSetupName:"300A0236",ApplicationSetupManufacturer:"300A0238",TemplateNumber:"300A0240",TemplateType:"300A0242",TemplateName:"300A0244",TotalReferenceAirKerma:"300A0250",BrachyAccessoryDeviceSequence:"300A0260",BrachyAccessoryDeviceNumber:"300A0262",BrachyAccessoryDeviceID:"300A0263",BrachyAccessoryDeviceType:"300A0264",BrachyAccessoryDeviceName:"300A0266",BrachyAccessoryDeviceNominalThickness:"300A026A",BrachyAccessoryDeviceNominalTransmission:"300A026C",ChannelEffectiveLength:"300A0271",ChannelInnerLength:"300A0272",AfterloaderChannelID:"300A0273",SourceApplicatorTipLength:"300A0274",ChannelSequence:"300A0280",ChannelNumber:"300A0282",ChannelLength:"300A0284",ChannelTotalTime:"300A0286",SourceMovementType:"300A0288",NumberOfPulses:"300A028A",PulseRepetitionInterval:"300A028C",SourceApplicatorNumber:"300A0290",SourceApplicatorID:"300A0291",SourceApplicatorType:"300A0292",SourceApplicatorName:"300A0294",SourceApplicatorLength:"300A0296",SourceApplicatorManufacturer:"300A0298",SourceApplicatorWallNominalThickness:"300A029C",SourceApplicatorWallNominalTransmission:"300A029E",SourceApplicatorStepSize:"300A02A0",TransferTubeNumber:"300A02A2",TransferTubeLength:"300A02A4",ChannelShieldSequence:"300A02B0",ChannelShieldNumber:"300A02B2",ChannelShieldID:"300A02B3",ChannelShieldName:"300A02B4",ChannelShieldNominalThickness:"300A02B8",ChannelShieldNominalTransmission:"300A02BA",FinalCumulativeTimeWeight:"300A02C8",BrachyControlPointSequence:"300A02D0",ControlPointRelativePosition:"300A02D2","300A02D4":"ControlPoint3DPosition",CumulativeTimeWeight:"300A02D6",CompensatorDivergence:"300A02E0",CompensatorMountingPosition:"300A02E1",SourceToCompensatorDistance:"300A02E2",TotalCompensatorTrayWaterEquivalentThickness:"300A02E3",IsocenterToCompensatorTrayDistance:"300A02E4",CompensatorColumnOffset:"300A02E5",IsocenterToCompensatorDistances:"300A02E6",CompensatorRelativeStoppingPowerRatio:"300A02E7",CompensatorMillingToolDiameter:"300A02E8",IonRangeCompensatorSequence:"300A02EA",CompensatorDescription:"300A02EB",RadiationMassNumber:"300A0302",RadiationAtomicNumber:"300A0304",RadiationChargeState:"300A0306",ScanMode:"300A0308",ModulatedScanModeType:"300A0309",VirtualSourceAxisDistances:"300A030A",SnoutSequence:"300A030C",SnoutPosition:"300A030D",SnoutID:"300A030F",NumberOfRangeShifters:"300A0312",RangeShifterSequence:"300A0314",RangeShifterNumber:"300A0316",RangeShifterID:"300A0318",RangeShifterType:"300A0320",RangeShifterDescription:"300A0322",NumberOfLateralSpreadingDevices:"300A0330",LateralSpreadingDeviceSequence:"300A0332",LateralSpreadingDeviceNumber:"300A0334",LateralSpreadingDeviceID:"300A0336",LateralSpreadingDeviceType:"300A0338",LateralSpreadingDeviceDescription:"300A033A",LateralSpreadingDeviceWaterEquivalentThickness:"300A033C",NumberOfRangeModulators:"300A0340",RangeModulatorSequence:"300A0342",RangeModulatorNumber:"300A0344",RangeModulatorID:"300A0346",RangeModulatorType:"300A0348",RangeModulatorDescription:"300A034A",BeamCurrentModulationID:"300A034C",PatientSupportType:"300A0350",PatientSupportID:"300A0352",PatientSupportAccessoryCode:"300A0354",TrayAccessoryCode:"300A0355",FixationLightAzimuthalAngle:"300A0356",FixationLightPolarAngle:"300A0358",MetersetRate:"300A035A",RangeShifterSettingsSequence:"300A0360",RangeShifterSetting:"300A0362",IsocenterToRangeShifterDistance:"300A0364",RangeShifterWaterEquivalentThickness:"300A0366",LateralSpreadingDeviceSettingsSequence:"300A0370",LateralSpreadingDeviceSetting:"300A0372",IsocenterToLateralSpreadingDeviceDistance:"300A0374",RangeModulatorSettingsSequence:"300A0380",RangeModulatorGatingStartValue:"300A0382",RangeModulatorGatingStopValue:"300A0384",RangeModulatorGatingStartWaterEquivalentThickness:"300A0386",RangeModulatorGatingStopWaterEquivalentThickness:"300A0388",IsocenterToRangeModulatorDistance:"300A038A",ScanSpotTimeOffset:"300A038F",ScanSpotTuneID:"300A0390",ScanSpotPrescribedIndices:"300A0391",NumberOfScanSpotPositions:"300A0392",ScanSpotReordered:"300A0393",ScanSpotPositionMap:"300A0394",ScanSpotReorderingAllowed:"300A0395",ScanSpotMetersetWeights:"300A0396",ScanningSpotSize:"300A0398",NumberOfPaintings:"300A039A",IonToleranceTableSequence:"300A03A0",IonBeamSequence:"300A03A2",IonBeamLimitingDeviceSequence:"300A03A4",IonBlockSequence:"300A03A6",IonControlPointSequence:"300A03A8",IonWedgeSequence:"300A03AA",IonWedgePositionSequence:"300A03AC",ReferencedSetupImageSequence:"300A0401",SetupImageComment:"300A0402",MotionSynchronizationSequence:"300A0410",ControlPointOrientation:"300A0412",GeneralAccessorySequence:"300A0420",GeneralAccessoryID:"300A0421",GeneralAccessoryDescription:"300A0422",GeneralAccessoryType:"300A0423",GeneralAccessoryNumber:"300A0424",SourceToGeneralAccessoryDistance:"300A0425",ApplicatorGeometrySequence:"300A0431",ApplicatorApertureShape:"300A0432",ApplicatorOpening:"300A0433",ApplicatorOpeningX:"300A0434",ApplicatorOpeningY:"300A0435",SourceToApplicatorMountingPositionDistance:"300A0436",NumberOfBlockSlabItems:"300A0440",BlockSlabSequence:"300A0441",BlockSlabThickness:"300A0442",BlockSlabNumber:"300A0443",DeviceMotionControlSequence:"300A0450",DeviceMotionExecutionMode:"300A0451",DeviceMotionObservationMode:"300A0452",DeviceMotionParameterCodeSequence:"300A0453",DistalDepthFraction:"300A0501",DistalDepth:"300A0502",NominalRangeModulationFractions:"300A0503",NominalRangeModulatedRegionDepths:"300A0504",DepthDoseParametersSequence:"300A0505",DeliveredDepthDoseParametersSequence:"300A0506",DeliveredDistalDepthFraction:"300A0507",DeliveredDistalDepth:"300A0508",DeliveredNominalRangeModulationFractions:"300A0509",DeliveredNominalRangeModulatedRegionDepths:"300A0510",DeliveredReferenceDoseDefinition:"300A0511",ReferenceDoseDefinition:"300A0512",ReferencedRTPlanSequence:"300C0002",ReferencedBeamSequence:"300C0004",ReferencedBeamNumber:"300C0006",ReferencedReferenceImageNumber:"300C0007",StartCumulativeMetersetWeight:"300C0008",EndCumulativeMetersetWeight:"300C0009",ReferencedBrachyApplicationSetupSequence:"300C000A",ReferencedBrachyApplicationSetupNumber:"300C000C",ReferencedSourceNumber:"300C000E",ReferencedFractionGroupSequence:"300C0020",ReferencedFractionGroupNumber:"300C0022",ReferencedVerificationImageSequence:"300C0040",ReferencedReferenceImageSequence:"300C0042",ReferencedDoseReferenceSequence:"300C0050",ReferencedDoseReferenceNumber:"300C0051",BrachyReferencedDoseReferenceSequence:"300C0055",ReferencedStructureSetSequence:"300C0060",ReferencedPatientSetupNumber:"300C006A",ReferencedDoseSequence:"300C0080",ReferencedToleranceTableNumber:"300C00A0",ReferencedBolusSequence:"300C00B0",ReferencedWedgeNumber:"300C00C0",ReferencedCompensatorNumber:"300C00D0",ReferencedBlockNumber:"300C00E0",ReferencedControlPointIndex:"300C00F0",ReferencedControlPointSequence:"300C00F2",ReferencedStartControlPointIndex:"300C00F4",ReferencedStopControlPointIndex:"300C00F6",ReferencedRangeShifterNumber:"300C0100",ReferencedLateralSpreadingDeviceNumber:"300C0102",ReferencedRangeModulatorNumber:"300C0104",OmittedBeamTaskSequence:"300C0111",ReasonForOmission:"300C0112",ReasonForOmissionDescription:"300C0113",ApprovalStatus:"300E0002",ReviewDate:"300E0004",ReviewTime:"300E0005",ReviewerName:"300E0008",Arbitrary:"40000010",TextComments:"40004000",ResultsID:"40080040",ResultsIDIssuer:"40080042",ReferencedInterpretationSequence:"40080050",ReportProductionStatusTrial:"400800FF",InterpretationRecordedDate:"40080100",InterpretationRecordedTime:"40080101",InterpretationRecorder:"40080102",ReferenceToRecordedSound:"40080103",InterpretationTranscriptionDate:"40080108",InterpretationTranscriptionTime:"40080109",InterpretationTranscriber:"4008010A",InterpretationText:"4008010B",InterpretationAuthor:"4008010C",InterpretationApproverSequence:"40080111",InterpretationApprovalDate:"40080112",InterpretationApprovalTime:"40080113",PhysicianApprovingInterpretation:"40080114",InterpretationDiagnosisDescription:"40080115",InterpretationDiagnosisCodeSequence:"40080117",ResultsDistributionListSequence:"40080118",DistributionName:"40080119",DistributionAddress:"4008011A",InterpretationID:"40080200",InterpretationIDIssuer:"40080202",InterpretationTypeID:"40080210",InterpretationStatusID:"40080212",Impressions:"40080300",ResultsComments:"40084000",LowEnergyDetectors:"40100001",HighEnergyDetectors:"40100002",DetectorGeometrySequence:"40100004",ThreatROIVoxelSequence:"40101001",ThreatROIBase:"40101004",ThreatROIExtents:"40101005",ThreatROIBitmap:"40101006",RouteSegmentID:"40101007",GantryType:"40101008",OOIOwnerType:"40101009",RouteSegmentSequence:"4010100A",PotentialThreatObjectID:"40101010",ThreatSequence:"40101011",ThreatCategory:"40101012",ThreatCategoryDescription:"40101013",ATDAbilityAssessment:"40101014",ATDAssessmentFlag:"40101015",ATDAssessmentProbability:"40101016",Mass:"40101017",Density:"40101018",ZEffective:"40101019",BoardingPassID:"4010101A",CenterOfMass:"4010101B",CenterOfPTO:"4010101C",BoundingPolygon:"4010101D",RouteSegmentStartLocationID:"4010101E",RouteSegmentEndLocationID:"4010101F",RouteSegmentLocationIDType:"40101020",AbortReason:"40101021",VolumeOfPTO:"40101023",AbortFlag:"40101024",RouteSegmentStartTime:"40101025",RouteSegmentEndTime:"40101026",TDRType:"40101027",InternationalRouteSegment:"40101028",ThreatDetectionAlgorithmandVersion:"40101029",AssignedLocation:"4010102A",AlarmDecisionTime:"4010102B",AlarmDecision:"40101031",NumberOfTotalObjects:"40101033",NumberOfAlarmObjects:"40101034",PTORepresentationSequence:"40101037",ATDAssessmentSequence:"40101038",TIPType:"40101039",DICOSVersion:"4010103A",OOIOwnerCreationTime:"40101041",OOIType:"40101042",OOISize:"40101043",AcquisitionStatus:"40101044",BasisMaterialsCodeSequence:"40101045",PhantomType:"40101046",OOIOwnerSequence:"40101047",ScanType:"40101048",ItineraryID:"40101051",ItineraryIDType:"40101052",ItineraryIDAssigningAuthority:"40101053",RouteID:"40101054",RouteIDAssigningAuthority:"40101055",InboundArrivalType:"40101056",CarrierID:"40101058",CarrierIDAssigningAuthority:"40101059",SourceOrientation:"40101060",SourcePosition:"40101061",BeltHeight:"40101062",AlgorithmRoutingCodeSequence:"40101064",TransportClassification:"40101067",OOITypeDescriptor:"40101068",TotalProcessingTime:"40101069",DetectorCalibrationData:"4010106C",AdditionalScreeningPerformed:"4010106D",AdditionalInspectionSelectionCriteria:"4010106E",AdditionalInspectionMethodSequence:"4010106F",AITDeviceType:"40101070",QRMeasurementsSequence:"40101071",TargetMaterialSequence:"40101072",SNRThreshold:"40101073",ImageScaleRepresentation:"40101075",ReferencedPTOSequence:"40101076",ReferencedTDRInstanceSequence:"40101077",PTOLocationDescription:"40101078",AnomalyLocatorIndicatorSequence:"40101079",AnomalyLocatorIndicator:"4010107A",PTORegionSequence:"4010107B",InspectionSelectionCriteria:"4010107C",SecondaryInspectionMethodSequence:"4010107D",PRCSToRCSOrientation:"4010107E",MACParametersSequence:"4FFE0001",SharedFunctionalGroupsSequence:"52009229",PerFrameFunctionalGroupsSequence:"52009230",WaveformSequence:"54000100",ChannelMinimumValue:"54000110",ChannelMaximumValue:"54000112",WaveformBitsAllocated:"54001004",WaveformSampleInterpretation:"54001006",WaveformPaddingValue:"5400100A",WaveformData:"54001010",FirstOrderPhaseCorrectionAngle:"56000010",SpectroscopyData:"56000020",FloatPixelData:"7FE00008",DoubleFloatPixelData:"7FE00009",PixelData:"7FE00010",CoefficientsSDVN:"7FE00020",CoefficientsSDHN:"7FE00030",CoefficientsSDDN:"7FE00040",DigitalSignaturesSequence:"FFFAFFFA",DataSetTrailingPadding:"FFFCFFFC",Item:"FFFEE000",ItemDelimitationItem:"FFFEE00D",SequenceDelimitationItem:"FFFEE0DD"});const Ru=Symbol("uid"),xu=Symbol("scoord3d");class Eu{constructor(e){if(!("scoord3d"in e))throw new Error("spatial coordinates are required for ROI");if("object"!=typeof e.scoord3d&&null===e.scoord3d)throw new Error("scoord3d of ROI must be a Scoord3D object");if("uid"in e){if(!("string"==typeof e.uid||e.uid instanceof String))throw new Error("uid of ROI must be a string");this[Ru]=e.uid}else this[Ru]=Pu();this[xu]=e.scoord3d}get uid(){return this[Ru]}get scoord3d(){return this[xu]}}const bu=Symbol("coordinates"),Ou=Symbol("frameOfReferenceUID"),qu=Symbol("fiducialUID");class Fu{constructor(e){if(!("string"==typeof e.frameOfReferenceUID||e.frameOfReferenceUID instanceof String))throw new Error("frameOfReferenceUID of Scoord3D must be a string");if(this[Ou]=e.frameOfReferenceUID,e.fiducialUID=e.fiducialUID||Pu(),!("string"==typeof e.fiducialUID||e.fiducialUID instanceof String))throw new Error("fiducialUID of Scoord3D must be a string");if(this[qu]=e.fiducialUID,!Array.isArray(e.coordinates))throw new Error("coordinates of Scoord3D must be an array");this[bu]=e.coordinates}get graphicData(){return this[bu]}get graphicType(){throw new Error('Prototype property "graphicType" must be implemented')}get frameOfReferenceUID(){return this[Ou]}get fiducialUID(){return this[qu]}}class Mu extends Fu{constructor(e){if(!Array.isArray(e.coordinates))throw new Error("coordinates of Point must be an array");if(3!==e.coordinates.length)throw new Error("coordinates of Point must be an array of length 3");if(e.coordinates.some(e=>e<0))throw new Error("coordinates of Point must be positive numbers");super({coordinates:e.coordinates,frameOfReferenceUID:e.frameOfReferenceUID,fiducialUID:e.fiducialUID})}get graphicType(){return"POINT"}}class Lu extends Fu{constructor(e){if(!Array.isArray(e.coordinates))throw new Error("coordinates of Polyline must be an array");if(void 0!==e.coordinates.find(e=>3!==e.length))throw new Error("coordinates of Polyline must be an array of (x,y,z) triplets");if(e.coordinates.find(e=>e.some(e=>e<0)))throw new Error("coordinates of Polyline must be positive numbers");super({coordinates:e.coordinates,frameOfReferenceUID:e.frameOfReferenceUID,fiducialUID:e.fiducialUID})}get graphicType(){return"POLYLINE"}}class wu extends Fu{constructor(e){if(!Array.isArray(e.coordinates))throw new Error("coordinates of Polygon must be an array");if(void 0!==e.coordinates.find(e=>3!==e.length))throw new Error("coordinates of Polygon must be an array of (x,y,z) triplets");if(e.coordinates.find(e=>e.some(e=>e<0)))throw new Error("coordinates of Polygon must be positive numbers");const t=e.coordinates.length;if(e.coordinates[0][0]!==e.coordinates[t-1][0]||e.coordinates[0][1]!==e.coordinates[t-1][1]||e.coordinates[0][2]!==e.coordinates[t-1][2])throw new Error("first and last coordinate of Polygon must be the same");super({coordinates:e.coordinates,frameOfReferenceUID:e.frameOfReferenceUID,fiducialUID:e.fiducialUID})}get graphicType(){return"POLYGON"}}class Nu extends Fu{constructor(e){if(!Array.isArray(e.coordinates))throw new Error("coordinates of Ellipse must be an array");if(4!==e.coordinates.length)throw new Error("coordinates of Ellipse must be an array of length 4");if(void 0!==e.coordinates.find(e=>3!==e.length))throw new Error("coordinates of Ellipse must be an array of (x,y,z) triplets");if(e.coordinates.find(e=>e.some(e=>e<0)))throw new Error("coordinates of Ellipse must be positive numbers");super({coordinates:e.coordinates,frameOfReferenceUID:e.frameOfReferenceUID,fiducialUID:e.fiducialUID})}get graphicType(){return"ELLIPSE"}}var Bu,Vu=ba((function(e,t){!function(e){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function i(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function n(e){for(var t=new Uint8Array(e.length),i=0,n=e.length;i<n;i++)t[i]=e.charCodeAt(i);return t}function r(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(i+t.length>e.length)return!1;for(var n=i,r=0;r<t.length;r++){if(t[r]!==e[n])return!1;n+=1}return!0}function o(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,o=e.length;n&&(o=Math.min(i+n,e.length));for(var a=i;a<o;a++)if(e[a]===t[0]&&r(e,t,a))return a;return-1}function a(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){function e(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return"".concat(e()+e(),"-").concat(e(),"-").concat(e(),"-").concat(e(),"-").concat(e()).concat(e()).concat(e())}(),i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"application/dicom",r="Content-Type: ".concat(i),o="\r\n--".concat(t,"\r\n").concat(r,"\r\n\r\n"),a="\r\n--".concat(t,"--"),s=n(o),c=n(a),l=s.length,u=c.length,h=0,d=e.map((function(e){var t=new Uint8Array(e),i=t.length;return h+=l+i+u,t})),p=new Uint8Array(h);p.set(s,0);var m=0;return d.forEach((function(e){p.set(s,m),p.set(e,m+l),m+=l+e.length})),p.set(c,m),{data:p.buffer,boundary:t}}function s(e){var t=new Uint8Array(e),i=n("\r\n\r\n"),r=o(t,i,0,1e3);if(-1===r)throw new Error("Response message has no multipart mime header");var a=function(e){for(var t=e.split("\r\n"),i=0;i<t.length;i++)if("--"===t[i].substr(0,2))return t[i];return null}(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=(arguments.length>2?arguments[2]:void 0)||e.length-t,n="",r=t;r<t+i;r++)n+=String.fromCharCode(e[r]);return n}(t,0,r));if(!a)throw new Error("Header of response message does not specify boundary");for(var s,c=n(a),l=c.length,u=[],h=l;-1!==s&&-1!==(s=o(t,c,h));){var d=o(t,i,h,1e3);if(-1===d)throw new Error("Response message part has no mime header");h=d+i.length;var p=e.slice(h,s-2);u.push(p),h=s+l}return u}function c(e){return"object"===t(e)&&null!==e}function l(e){return 0===Object.keys(e).length&&e.constructor===Object}var u=function(e){return e[0]},h=function(e){return e.length>1?e:e[0]},d="application/dicom",p="application/dicom+json",m="application/octet-stream",f="application/pdf";function g(e,t,i){var n=e.lastIndexOf(t)+t.length;if(n<t.length)return null;if(void 0!==i){var r=e.lastIndexOf(i);return r<0?null:e.substring(n,r)}return e.substring(n)}var S={DICOMwebClient:function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.baseURL=t.url,this.baseURL||console.error("no DICOMweb base url provided - calls will fail"),"username"in t&&(this.username=t.username,"password"in t||console.error("no password provided to authenticate with DICOMweb service"),this.password=t.password),"qidoURLPrefix"in t?(console.log("use URL prefix for QIDO-RS: ".concat(t.qidoURLPrefix)),this.qidoURL="".concat(this.baseURL,"/").concat(t.qidoURLPrefix)):this.qidoURL=this.baseURL,"wadoURLPrefix"in t?(console.log("use URL prefix for WADO-RS: ".concat(t.wadoURLPrefix)),this.wadoURL="".concat(this.baseURL,"/").concat(t.wadoURLPrefix)):this.wadoURL=this.baseURL,"stowURLPrefix"in t?(console.log("use URL prefix for STOW-RS: ".concat(t.stowURLPrefix)),this.stowURL="".concat(this.baseURL,"/").concat(t.stowURLPrefix)):this.stowURL=this.baseURL,this.headers=t.headers||{}}var n,r,o;return n=e,o=[{key:"_parseQueryParameters",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t="?";return Object.keys(e).forEach((function(i,n){0!==n&&(t+="&"),t+="".concat(i,"=").concat(encodeURIComponent(e[i]))})),t}},{key:"_assertMediaTypeIsValid",value:function(e){if(!e)throw new Error("Not a valid media type: ".concat(e));var t=e.indexOf("/");if(-1===t)throw new Error("Not a valid media type: ".concat(e));var i=e.slice(0,t);if(!["application","image","text","video"].includes(i))throw new Error("Not a valid media type: ".concat(e));if(e.slice(t+1).includes("/"))throw new Error("Not a valid media type: ".concat(e))}},{key:"_parseMediaType",value:function(t){return e._assertMediaTypeIsValid(t),t.split("/")}},{key:"_buildAcceptHeaderFieldValue",value:function(t,i){if(!Array.isArray(t))throw new Error("Acceptable media types must be provided as an Array");return t.map((function(t){var n=t.mediaType;if(e._assertMediaTypeIsValid(n),!i.includes(n))throw new Error("Media type ".concat(n," is not supported for requested resource"));return n})).join(", ")}},{key:"_buildMultipartAcceptHeaderFieldValue",value:function(t,i){if(!Array.isArray(t))throw new Error("Acceptable media types must be provided as an Array");if(!Array.isArray(i)&&!c(i))throw new Error("Supported media types must be provided as an Array or an Object");var n=[];return t.forEach((function(t){var r=t.transferSyntaxUID,o=t.mediaType;e._assertMediaTypeIsValid(o);var a='multipart/related; type="'.concat(o,'"');if(c(i)){if(!(Object.values(i).flat(1).includes(o)||o.endsWith("/*")&&o.endsWith("/")))throw new Error("Media type ".concat(o," is not supported for requested resource"));if(r){if("*"!==r){if(!Object.keys(i).includes(r))throw new Error("Transfer syntax ".concat(r," is not supported for requested resource"));var s=i[r];if(!s.includes(o)){var l=e._parseMediaType(o)[0];s.map((function(t){var i=e._parseMediaType(t)[0];if(l!==i||!o.endsWith("/*")&&!o.endsWith("/"))throw new Error("Transfer syntax ".concat(r," is not supported for requested resource"))}))}}a+="; transfer-syntax=".concat(r)}}else if(Array.isArray(i)&&!i.includes(o))throw new Error("Media type ".concat(o," is not supported for requested resource"));n.push(a)})),n.join(", ")}},{key:"_buildRangeHeaderFieldValue",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return 1===e.length?"bytes=".concat(e[0],"-"):2===e.length?"bytes=".concat(e[0],"-").concat(e[1]):"bytes=0-"}},{key:"_getCommonMediaType",value:function(t){if(!t||!t.length)throw new Error("No acceptable media types provided");var i=new Set;if(t.forEach((function(t){var n=t.mediaType;if(n.startsWith("application"))i.add(n);else{var r=e._parseMediaType(n)[0];i.add("".concat(r,"/"))}})),0===i.size)throw new Error("No common acceptable media type could be identified.");if(i.size>1)throw new Error("Acceptable media types must have the same type.");return Array.from(i)[0]}}],(r=[{key:"_httpRequest",value:function(e,i,n){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return new Promise((function(a,s){var c=new XMLHttpRequest;c.open(i,e,!0),"responseType"in o&&(c.responseType=o.responseType),"object"===t(n)&&Object.keys(n).forEach((function(e){c.setRequestHeader(e,n[e])}));var l=r.headers;Object.keys(l).forEach((function(e){c.setRequestHeader(e,l[e])})),c.onloadstart=function(){},c.onloadend=function(){},c.onreadystatechange=function(){if(4===c.readyState)if(200===c.status)a(c.response);else if(202===c.status)console.warn("some resources already existed: ",c),a(c.response);else if(204===c.status)console.warn("empty response for request: ",c),a([]);else{console.error("request failed: ",c);var e=new Error("request failed");e.request=c,e.response=c.response,e.status=c.status,console.error(e),console.error(e.response),s(e)}},"progressCallback"in o&&"function"==typeof o.progressCallback&&(c.onprogress=o.progressCallback),"data"in o?c.send(o.data):c.send()}))}},{key:"_httpGet",value:function(e,t,i,n){return this._httpRequest(e,"get",t,{responseType:i,progressCallback:n})}},{key:"_httpGetApplicationJson",value:function(i){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,o=i;"object"===t(n)&&(l(n)||(o+=e._parseQueryParameters(n)));var a={Accept:p},s="json";return this._httpGet(o,a,s,r)}},{key:"_httpGetApplicationPdf",value:function(i){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,o=i;"object"===t(n)&&(l(n)||(o+=e._parseQueryParameters(n)));var a={Accept:f},s="json";return this._httpGet(o,a,s,r)}},{key:"_httpGetImage",value:function(i,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0,a=i;"object"===t(r)&&(l(r)||(a+=e._parseQueryParameters(r)));var s=["image/","image/*","image/jpeg","image/jp2","image/gif","image/png"],c=e._buildAcceptHeaderFieldValue(n,s),u={Accept:c},h="arraybuffer";return this._httpGet(a,u,h,o)}},{key:"_httpGetText",value:function(i,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0,a=i;"object"===t(r)&&(l(r)||(a+=e._parseQueryParameters(r)));var s=["text/","text/*","text/html","text/plain","text/rtf","text/xml"],c=e._buildAcceptHeaderFieldValue(n,s),u={Accept:c},h="arraybuffer";return this._httpGet(a,u,h,o)}},{key:"_httpGetVideo",value:function(i,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0,a=i;"object"===t(r)&&(l(r)||(a+=e._parseQueryParameters(r)));var s=["video/","video/*","video/mpeg","video/mp4","video/H265"],c=e._buildAcceptHeaderFieldValue(n,s),u={Accept:c},h="arraybuffer";return this._httpGet(a,u,h,o)}},{key:"_httpGetMultipartImage",value:function(t,i,n,r){var o,a=arguments.length>4&&void 0!==arguments[4]&&arguments[4],c=arguments.length>5?arguments[5]:void 0,l={};return a?o=["image/jpeg","image/gif","image/png","image/jp2"]:(o={"1.2.840.10008.1.2.5":["image/x-dicom-rle"],"1.2.840.10008.1.2.4.50":["image/jpeg"],"1.2.840.10008.1.2.4.51":["image/jpeg"],"1.2.840.10008.1.2.4.57":["image/jpeg"],"1.2.840.10008.1.2.4.70":["image/jpeg"],"1.2.840.10008.1.2.4.80":["image/x-jls","image/jls"],"1.2.840.10008.1.2.4.81":["image/x-jls","image/jls"],"1.2.840.10008.1.2.4.90":["image/jp2"],"1.2.840.10008.1.2.4.91":["image/jp2"],"1.2.840.10008.1.2.4.92":["image/jpx"],"1.2.840.10008.1.2.4.93":["image/jpx"]},n&&(l.Range=e._buildRangeHeaderFieldValue(n))),l.Accept=e._buildMultipartAcceptHeaderFieldValue(i,o),this._httpGet(t,l,"arraybuffer",c).then(s)}},{key:"_httpGetMultipartVideo",value:function(t,i,n,r){var o,a=arguments.length>4&&void 0!==arguments[4]&&arguments[4],c=arguments.length>5?arguments[5]:void 0,l={};return a?o=["video/","video/*","video/mpeg2","video/mp4","video/H265"]:(o={"1.2.840.10008.1.2.4.100":["video/mpeg2"],"1.2.840.10008.1.2.4.101":["video/mpeg2"],"1.2.840.10008.1.2.4.102":["video/mp4"],"1.2.840.10008.1.2.4.103":["video/mp4"],"1.2.840.10008.1.2.4.104":["video/mp4"],"1.2.840.10008.1.2.4.105":["video/mp4"],"1.2.840.10008.1.2.4.106":["video/mp4"]},n&&(l.Range=e._buildRangeHeaderFieldValue(n))),l.Accept=e._buildMultipartAcceptHeaderFieldValue(i,o),this._httpGet(t,l,"arraybuffer",c).then(s)}},{key:"_httpGetMultipartApplicationDicom",value:function(t,i,n,r){var o={},a="application/dicom",c={"1.2.840.10008.1.2.1":[a],"1.2.840.10008.1.2.5":[a],"1.2.840.10008.1.2.4.50":[a],"1.2.840.10008.1.2.4.51":[a],"1.2.840.10008.1.2.4.57":[a],"1.2.840.10008.1.2.4.70":[a],"1.2.840.10008.1.2.4.80":[a],"1.2.840.10008.1.2.4.81":[a],"1.2.840.10008.1.2.4.90":[a],"1.2.840.10008.1.2.4.91":[a],"1.2.840.10008.1.2.4.92":[a],"1.2.840.10008.1.2.4.93":[a],"1.2.840.10008.1.2.4.100":[a],"1.2.840.10008.1.2.4.101":[a],"1.2.840.10008.1.2.4.102":[a],"1.2.840.10008.1.2.4.103":[a],"1.2.840.10008.1.2.4.104":[a],"1.2.840.10008.1.2.4.105":[a],"1.2.840.10008.1.2.4.106":[a]},l=i;return i||(l=[{mediaType:a}]),o.Accept=e._buildMultipartAcceptHeaderFieldValue(l,c),this._httpGet(t,o,"arraybuffer",r).then(s)}},{key:"_httpGetMultipartApplicationOctetStream",value:function(t,i,n,r,o){var a={},c={"1.2.840.10008.1.2.1":["application/octet-stream"]},l=i;return i||(l=[{mediaType:"application/octet-stream"}]),n&&(a.Range=e._buildRangeHeaderFieldValue(n)),a.Accept=e._buildMultipartAcceptHeaderFieldValue(l,c),this._httpGet(t,a,"arraybuffer",o).then(s)}},{key:"_httpPost",value:function(e,t,i,n){return this._httpRequest(e,"post",t,{data:i,progressCallback:n})}},{key:"_httpPostApplicationJson",value:function(e,t,i){var n={"Content-Type":p};return this._httpPost(e,n,t,i)}},{key:"searchForStudies",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};console.log("search for studies");var i="".concat(this.qidoURL,"/studies");return"queryParams"in t&&(i+=e._parseQueryParameters(t.queryParams)),this._httpGetApplicationJson(i)}},{key:"retrieveStudyMetadata",value:function(e){if(!("studyInstanceUID"in e))throw new Error("Study Instance UID is required for retrieval of study metadata");console.log("retrieve metadata of study ".concat(e.studyInstanceUID));var t="".concat(this.wadoURL,"/studies/").concat(e.studyInstanceUID,"/metadata");return this._httpGetApplicationJson(t)}},{key:"searchForSeries",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=this.qidoURL;return"studyInstanceUID"in t&&(console.log("search series of study ".concat(t.studyInstanceUID)),i+="/studies/".concat(t.studyInstanceUID)),i+="/series","queryParams"in t&&(i+=e._parseQueryParameters(t.queryParams)),this._httpGetApplicationJson(i)}},{key:"retrieveSeriesMetadata",value:function(e){if(!("studyInstanceUID"in e))throw new Error("Study Instance UID is required for retrieval of series metadata");if(!("seriesInstanceUID"in e))throw new Error("Series Instance UID is required for retrieval of series metadata");console.log("retrieve metadata of series ".concat(e.seriesInstanceUID));var t="".concat(this.wadoURL,"/studies/").concat(e.studyInstanceUID,"/series/").concat(e.seriesInstanceUID,"/metadata");return this._httpGetApplicationJson(t)}},{key:"searchForInstances",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=this.qidoURL;return"studyInstanceUID"in t?(i+="/studies/".concat(t.studyInstanceUID),"seriesInstanceUID"in t?(console.log("search for instances of series ".concat(t.seriesInstanceUID)),i+="/series/".concat(t.seriesInstanceUID)):console.log("search for instances of study ".concat(t.studyInstanceUID))):console.log("search for instances"),i+="/instances","queryParams"in t&&(i+=e._parseQueryParameters(t.queryParams)),this._httpGetApplicationJson(i)}},{key:"buildInstanceWadoURIUrl",value:function(e){if(!("studyInstanceUID"in e))throw new Error("Study Instance UID is required.");if(!("seriesInstanceUID"in e))throw new Error("Series Instance UID is required.");if(!("sopInstanceUID"in e))throw new Error("SOP Instance UID is required.");var t=e.contentType||d,i=e.transferSyntax||"*",n=[];n.push("requestType=WADO"),n.push("studyUID=".concat(e.studyInstanceUID)),n.push("seriesUID=".concat(e.seriesInstanceUID)),n.push("objectUID=".concat(e.sopInstanceUID)),n.push("contentType=".concat(t)),n.push("transferSyntax=".concat(i));var r=n.join("&");return"".concat(this.wadoURL,"?").concat(r)}},{key:"retrieveInstanceMetadata",value:function(e){if(!("studyInstanceUID"in e))throw new Error("Study Instance UID is required for retrieval of instance metadata");if(!("seriesInstanceUID"in e))throw new Error("Series Instance UID is required for retrieval of instance metadata");if(!("sopInstanceUID"in e))throw new Error("SOP Instance UID is required for retrieval of instance metadata");console.log("retrieve metadata of instance ".concat(e.sopInstanceUID));var t="".concat(this.wadoURL,"/studies/").concat(e.studyInstanceUID,"/series/").concat(e.seriesInstanceUID,"/instances/").concat(e.sopInstanceUID,"/metadata");return this._httpGetApplicationJson(t)}},{key:"retrieveInstanceFrames",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required for retrieval of instance frames");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required for retrieval of instance frames");if(!("sopInstanceUID"in t))throw new Error("SOP Instance UID is required for retrieval of instance frames");if(!("frameNumbers"in t))throw new Error("frame numbers are required for retrieval of instance frames");console.log("retrieve frames ".concat(t.frameNumbers.toString()," of instance ").concat(t.sopInstanceUID));var i="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID,"/instances/").concat(t.sopInstanceUID,"/frames/").concat(t.frameNumbers.toString()),n=t.mediaTypes;if(!n)return this._httpGetMultipartApplicationOctetStream(i);var r=e._getCommonMediaType(n);if(r===m)return this._httpGetMultipartApplicationOctetStream(i,n);if(r.startsWith("image"))return this._httpGetMultipartImage(i,n);if(r.startsWith("video"))return this._httpGetMultipartVideo(i,n);throw new Error("Media type ".concat(r," is not supported for retrieval of frames."))}},{key:"retrieveInstanceRendered",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required for retrieval of rendered instance");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required for retrieval of rendered instance");if(!("sopInstanceUID"in t))throw new Error("SOP Instance UID is required for retrieval of rendered instance");var i="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID,"/instances/").concat(t.sopInstanceUID,"/rendered"),n=t.mediaTypes,r=t.params;if(!n)return this._httpGet(i,{},"arraybuffer");var o=e._getCommonMediaType(n);if(o.startsWith("image"))return this._httpGetImage(i,n,r);if(o.startsWith("video"))return this._httpGetVideo(i,n,r);if(o.startsWith("text"))return this._httpGetText(i,n,r);if(o===f)return this._httpGetApplicationPdf(i,r);throw new Error("Media type ".concat(o," is not supported for retrieval of rendered instance."))}},{key:"retrieveInstanceFramesRendered",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required for retrieval of rendered instance frames");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required for retrieval of rendered instance frames");if(!("sopInstanceUID"in t))throw new Error("SOP Instance UID is required for retrieval of rendered instance frames");if(!("frameNumbers"in t))throw new Error("frame numbers are required for retrieval of rendered instance frames");console.debug("retrieve rendered frames ".concat(t.frameNumbers.toString()," of instance ").concat(t.sopInstanceUID));var i="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID,"/instances/").concat(t.sopInstanceUID,"/frames/").concat(t.frameNumbers.toString(),"/rendered"),n=t.mediaTypes;if(!n)return this._httpGet(i,{},"arraybuffer");var r=e._getCommonMediaType(n);if(r.startsWith("image"))return this._httpGetImage(i,n);if(r.startsWith("video"))return this._httpGetVideo(i,n);throw new Error("Media type ".concat(r," is not supported for retrieval of rendered frame."))}},{key:"retrieveInstance",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required");if(!("sopInstanceUID"in t))throw new Error("SOP Instance UID is required");var i="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID,"/instances/").concat(t.sopInstanceUID),n=t.mediaTypes;if(!n)return this._httpGetMultipartApplicationDicom(i).then(u);var r=e._getCommonMediaType(n);if(r===d)return this._httpGetMultipartApplicationDicom(i,n).then(u);if(r===m)return this._httpGetMultipartApplicationOctetStream(i,n).then(u);if(r.startsWith("image"))return this._httpGetMultipartImage(i,n).then(h);if(r.startsWith("video"))return this._httpGetMultipartVideo(i,n).then(h);throw new Error("Media type ".concat(r," is not supported for retrieval of instance."))}},{key:"retrieveSeries",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required");var i="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID),n=t.mediaTypes;if(!n)return this._httpGetMultipartApplicationDicom(i);var r=e._getCommonMediaType(n);if(r===d)return this._httpGetMultipartApplicationDicom(i,n);if(r===m)return this._httpGetMultipartApplicationOctetStream(i,n);if(r.startsWith("image"))return this._httpGetMultipartImage(i,n);if(r.startsWith("video"))return this._httpGetMultipartVideo(i,n);throw new Error("Media type ".concat(r," is not supported for retrieval of series."))}},{key:"retrieveStudy",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required");var i="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID),n=t.mediaTypes;if(!n)return this._httpGetMultipartApplicationDicom(i);var r=e._getCommonMediaType(n);if(r===d)return this._httpGetMultipartApplicationDicom(i,n);if(r===m)return this._httpGetMultipartApplicationOctetStream(i,n);if(r.startsWith("image"))return this._httpGetMultipartImage(i,n);if(r.startsWith("video"))return this._httpGetMultipartVideo(i,n);throw new Error("Media type ".concat(r," is not supported for retrieval of study."))}},{key:"retrieveBulkData",value:function(t){if(!("BulkDataURI"in t))throw new Error("BulkDataURI is required.");var i=t.BulkDataURI,n=t.mediaTypes,r=t.byteRange;if(!n)return this._httpGetMultipartApplicationOctetStream(i,n,r);var o=e._getCommonMediaType(n);if(o===m)return this._httpGetMultipartApplicationOctetStream(i,n,r);if(o.startsWith("image"))return this._httpGetMultipartImage(i,n,r);throw new Error("Media type ".concat(o," is not supported for retrieval of bulk data."))}},{key:"storeInstances",value:function(e){if(!("datasets"in e))throw new Error("datasets are required for storing");var t="".concat(this.stowURL,"/studies");"studyInstanceUID"in e&&(t+="/".concat(e.studyInstanceUID));var i=a(e.datasets),n=i.data,r=i.boundary,o={"Content-Type":"multipart/related; type=application/dicom; boundary=".concat(r)};return this._httpPost(t,o,n,e.progressCallback)}}])&&i(n.prototype,r),o&&i(n,o),e}()},y={getStudyInstanceUIDFromUri:function(e){var t=g(e,"studies/","/series");return t||(t=g(e,"studies/")),t||console.debug('Study Instance UID could not be dertermined from URI "'.concat(e,'"')),t},getSeriesInstanceUIDFromUri:function(e){var t=g(e,"series/","/instances");return t||(t=g(e,"series/")),t||console.debug('Series Instance UID could not be dertermined from URI "'.concat(e,'"')),t},getSOPInstanceUIDFromUri:function(e){var t=g(e,"/instances/","/frames");return t||(t=g(e,"/instances/","/metadata")),t||(t=g(e,"/instances/")),t||console.debug('SOP Instance UID could not be dertermined from URI"'.concat(e,'"')),t},getFrameNumbersFromUri:function(e){var t=g(e,"/frames/","/rendered");return t||(t=g(e,"/frames/")),void 0===t&&console.debug('Frames Numbers could not be dertermined from URI"'.concat(e,'"')),t.split(",")}};e.api=S,e.utils=y,e.version="0.5.2",Object.defineProperty(e,"__esModule",{value:!0})}(t)})),ku=(Bu=Vu)&&Bu.__esModule&&Object.prototype.hasOwnProperty.call(Bu,"default")?Bu.default:Bu;function Gu(e){return e.SharedFunctionalGroupsSequence[0].PixelMeasuresSequence[0].PixelSpacing}function Uu(e,t){return function(e,t){let i=!1;e[0]instanceof Array||(e=[e],i=!0);const n=t[t.length-1],r=n.TotalPixelMatrixOriginSequence[0],o=Number(r.XOffsetInSlideCoordinateSystem),a=Number(r.YOffsetInSlideCoordinateSystem),s=Gu(n);return e=e.map(e=>[Number((o+e[0]*s[0]).toFixed(4)),Number((a-(e[1]-1)*s[1]).toFixed(4)),Number((0).toFixed(4))]),i?e[0]:e}([e[0]+1,e[1],e[2]],t)}function Wu(e,t){return function(e,t){let i=!1;e[0]instanceof Array||(e=[e],i=!0);const n=t[t.length-1].TotalPixelMatrixOriginSequence[0],r=Number(n.XOffsetInSlideCoordinateSystem),o=Number(n.YOffsetInSlideCoordinateSystem);return e=e.map(e=>{const i=Gu(t[t.length-1]);return[e[0]/i[0]-1-r,-(e[1]/i[1]-1)-o,e[2]]}),i?e[0]:e}([e[0],e[1],e[2]],t)}function zu(e,t){let i={};if(void 0!==e){const n=function(e,t){const i=t[t.length-1].FrameOfReferenceUID,n=e.getType();if("Point"===n){let n=e.getCoordinates();return n=Uu(n,t),new Mu({coordinates:n,frameOfReferenceUID:i})}if("Polygon"===n){let n=e.getCoordinates()[0].map(e=>Uu(e,t));return new wu({coordinates:n,frameOfReferenceUID:i})}if("LineString"===n){let n=e.getCoordinates().map(e=>Uu(e,t));return new Lu({coordinates:n,frameOfReferenceUID:i})}if("Circle"===n){let n=e.getCenter(),r=e.getRadius(),o=[[n[0]-r,n[1]],[n[0]+r,n[1]],[n[0],n[1]-r],[n[0],n[1]+r]];return o=o.map(e=>(e.push(0),Uu(e,t))),new Nu({coordinates:o,frameOfReferenceUID:i})}console.error(`unknown geometry type "${n}"`)}(e.getGeometry(),t),r=e.getProperties();delete r[e.getGeometryName()];const o=e.getId();i=new Eu({scoord3d:n,properties:r,uid:o})}return i}const Hu=Symbol("usewebgl"),ju=Symbol("map"),Xu=Symbol("features"),Yu=Symbol("drawingSource"),Ku=Symbol("drawingLayer"),Zu=Symbol("segmentations"),Qu=Symbol("client"),Ju=Symbol("controls"),$u=Symbol("interactions"),eh=Symbol("pyramidMetadata"),th=Symbol("pyramidFrameMappings"),ih=Symbol("pyramidMetadataBase"),nh=Symbol("metadata");let rh={VLWholeSlideMicroscopyImageViewer:class{constructor(e){this[Hu]=!("useWebGL"in e)||e.useWebGL,this[Qu]=e.client,"retrieveRendered"in e||(e.retrieveRendered=!0),"controls"in e||(e.controls=[]),e.controls=new Set(e.controls),this[Zu]={},this[Xu]=new V([],{unique:!0}),this[Xu].on("add",e=>{void 0===e.element.getId()&&e.element.setId(Pu())}),this[nh]=e.metadata.map(e=>(function(e){const t=e["00080016"].Value[0];if("1.2.840.10008.5.1.4.1.1.77.1.6"!==t)throw new Error('SOP Class UID "'+t+'" is not supported');const i=e["00080008"].Value;if("VOLUME"!==i[2])throw new Error('expected image type value 3 to be "VOLUME", is "'+i[2]+'" instead');const n=e=>{const t={};return Object.keys(e).forEach(i=>{const r=Iu[i],o=e[i].vr;if("BulkDataURI"in e[i])console.log(`skip bulk data element "${r}"`);else if("Value"in e[i]){const a=e[i].Value;"SQ"===o?t[r]=a.map(e=>n(e)):1===a.length?t[r]=a[0]:t[r]=a}else t[r]="SQ"===o?[]:""}),t},r=n(e);return"NumberOfFrames"in r||(r.NumberOfFrames=1),r})(e)),this[nh].sort((e,t)=>{const i=e.TotalPixelMatrixColumns-t.TotalPixelMatrixColumns;return 0===i&&void 0!==e.ConcatenationFrameOffsetNumber?e.ConcatenationFrameOffsetNumber-t.ConcatenationFrameOffsetNumber:i}),this[eh]=[],this[th]=[];let t=this[nh].map(e=>(function(e){const t=e.Rows,i=e.Columns,n=e.TotalPixelMatrixColumns,r=(e.TotalPixelMatrixRows,e.SOPInstanceUID);let o=e.NumberOfFrames||1;o=Number(o);let a=e.ConcatenationFrameOffsetNumber||0;a=Number(a);const s=e.DimensionOrganizationType||"TILED_SPARSE",c=Math.ceil(n/i),l={};if("TILED_FULL"===s){let e=a+1,t=a+o;for(let i=e;i<=t;i++){let t=i/c,n=Math.ceil(t),o=i-e+1;l[n+"-"+(i-n*c+c)]=`${r}/frames/${o}`}}else{const n=e.PerFrameFunctionalGroupsSequence;for(let e=0;e<o;e++){let o=n[e].PlanePositionSlideSequence[0],a=o.RowPositionInTotalImagePixelMatrix,s=o.ColumnPositionInTotalImagePixelMatrix,c=e+1;l[Math.ceil(a/i)+"-"+Math.ceil(s/t)]=`${r}/frames/${c}`}}return l})(e));for(let e=0;e<this[nh].length;e++){const i=this[nh][e].TotalPixelMatrixColumns,n=this[nh][e].TotalPixelMatrixRows,r=this[nh][e].NumberOfFrames;let o=!1,a=null;for(let e=0;e<this[eh].length;e++)this[eh][e].TotalPixelMatrixColumns===i&&this[eh][e].TotalPixelMatrixRows===n&&(o=!0,a=e);if(o){if(Object.assign(this[th][a],t[e]),this[eh][a].NumberOfFrames+=r,"PerFrameFunctionalGroupsSequence"in this[nh][a]&&this[eh][a].PerFrameFunctionalGroupsSequence.push(...this[nh][e].PerFrameFunctionalGroupsSequence),!1 in this[nh][e])throw new Error('Attribute "SOPInstanceUIDOfConcatenationSource" is required for concatenation parts.');const i=this[nh][e].SOPInstanceUIDOfConcatenationSource;this[eh][a].SOPInstanceUID=i,delete this[eh][a].SOPInstanceUIDOfConcatenationSource,delete this[eh][a].ConcatenationUID,delete this[eh][a].InConcatenationNumber,delete this[eh][a].ConcatenationFrameOffsetNumber}else this[eh].push(this[nh][e]),this[th].push(t[e])}const i=this[eh].length;0===i&&console.error("empty pyramid - no levels found"),this[ih]=this[eh][i-1];const n=[],r=[],o=[],a=[],s=[0,-1],c=Gu(this[ih]),l=(this[ih].Columns,this[ih].Rows,this[ih].TotalPixelMatrixColumns),u=this[ih].TotalPixelMatrixRows;for(let e=i-1;e>=0;e--){const t=this[eh][e].Columns,i=this[eh][e].Rows,l=this[eh][e].TotalPixelMatrixColumns,u=this[eh][e].TotalPixelMatrixRows,h=Gu(this[eh][e]),d=t*Math.ceil(l/t),p=i*Math.ceil(u/i);n.push([t,i]),r.push([d,p]);let m=h[0]/c[0];o.push(m),a.push(s)}o.reverse(),n.reverse(),a.reverse();const h=this[eh],d=this[th],p=[0,-u,l,-1];var m=0;-1===this[ih].ImageOrientationSlide[1]&&-1===this[ih].ImageOrientationSlide[3]&&(m=180);const f=m*(Math.PI/180),g=new xi({code:"NONE",units:"metric",extent:p,getPointResolution:function(e,t){return e*(Gu(h[i-1])[0]/1e3)}}),S=new Yl({extent:p,origins:a,resolutions:o,sizes:r,tileSizes:n}),y=new Cu({crossOrigin:"Anonymous",tileGrid:S,projection:g,wrapX:!1});y.setTileUrlFunction((t,i,n)=>{let r=t[0],o=t[1]+1,a=1-(t[2]+1)+"-"+o,s=d[r][a];if(void 0===s)return console.warn("tile "+a+" not found at level "+r),null;let c=e.client.wadoURL+"/studies/"+h[r].StudyInstanceUID+"/series/"+h[r].SeriesInstanceUID+"/instances/"+s;return e.retrieveRendered&&(c+="/rendered"),c}),y.setTileLoadFunction((t,i)=>{if(null!==i){const n=ku.utils.getStudyInstanceUIDFromUri(i),r=ku.utils.getSeriesInstanceUIDFromUri(i),o=ku.utils.getSOPInstanceUIDFromUri(i),a=ku.utils.getFrameNumbersFromUri(i),s=t.getImage();if(e.retrieveRendered){const t="image/png",i={studyInstanceUID:n,seriesInstanceUID:r,sopInstanceUID:o,frameNumbers:a,mediaTypes:[{mediaType:t}]};e.client.retrieveInstanceFramesRendered(i).then(e=>{const i=new Blob([e],{type:t});s.src=window.URL.createObjectURL(i)})}else{const t="image/jpeg",i={studyInstanceUID:n,seriesInstanceUID:r,sopInstanceUID:o,frameNumbers:a,mediaTypes:[{mediaType:t,transferSyntaxUID:"1.2.840.10008.1.2.4.50"}]};e.client.retrieveInstanceFrames(i).then(e=>{const i=new Blob(e,{type:t});s.src=window.URL.createObjectURL(i)})}}else console.warn("could not load tile")});const v=new cu({extent:p,source:y,preload:1,projection:g});this[Yu]=new Qa({tileGrid:S,projection:g,features:this[Xu],wrapX:!1}),this[Ku]=new Da({extent:p,source:this[Yu],projection:g,updateWhileAnimating:!0,updateWhileInteracting:!0});const _=new er({center:li(p),extent:p,projection:g,resolutions:o,rotation:f}),C=new er({projection:g,resolutions:o,rotation:f});this[$u]={draw:void 0,select:void 0,modify:void 0},this[Ju]={scale:new wc({units:"metric",className:""})},e.controls.has("fullscreen")&&(this[Ju].fullscreen=new br),e.controls.has("overview")&&(this[Ju].overview=new Oc({view:C,collapsed:!0})),this[Hu]?this[ju]=new ou({layers:[v,this[Ku]],view:_,controls:[],loadTilesWhileAnimating:!0,loadTilesWhileInteracting:!0,logo:!1}):this[ju]=new Rc({layers:[v,this[Ku]],view:_,controls:[],loadTilesWhileAnimating:!0,loadTilesWhileInteracting:!0,logo:!1});for(let e in this[Ju])this[ju].addControl(this[Ju][e]);this[ju].getView().fit(p,this[ju].getSize())}resize(){this[ju].updateSize()}render(e){"container"in e||console.error("container must be provided for rendering images"),this[ju].setTarget(e.container);let t=this[Ju].scale.element;t.style.position="absolute",t.style.right=".5em",t.style.bottom=".5em",t.style.left="auto",t.style.padding="2px",t.style.backgroundColor="rgba(255,255,255,.5)",t.style.borderRadius="4px",t.style.margin="1px";let i=this[Ju].scale.innerElement_;i.style.color="black",i.style.fontWeight="600",i.style.fontSize="10px",i.style.textAlign="center",i.style.borderWidth="1.5px",i.style.borderStyle="solid",i.style.borderTop="none",i.style.borderRightColor="black",i.style.borderLeftColor="black",i.style.borderBottomColor="black",i.style.margin="1px",i.style.willChange="contents,width";const n=this[ju].getTargetElement();this[Yu].on(Ea.ADDFEATURE,e=>{Tu(n,Au.ROI_ADDED,zu(e.feature,this[eh]))}),this[Yu].on(Ea.CHANGEFEATURE,e=>{Tu(n,Au.ROI_MODIFIED,zu(e.feature,this[eh]))}),this[Yu].on(Ea.REMOVEFEATURE,e=>{Tu(n,Au.ROI_REMOVED,zu(e.feature,this[eh]))}),this[ju].on(et.MOVESTART,e=>{Tu(n,Au.MOVE_STARTED,this.getAllROIs())}),this[ju].on(et.MOVEEND,e=>{Tu(n,Au.MOVE_ENDED,this.getAllROIs())})}activateDrawInteraction(e){this.deactivateDrawInteraction();const t={point:{type:"Point",geometryName:"Point"},circle:{type:"Circle",geometryName:"Circle"},box:{type:"Circle",geometryName:"Box",geometryFunction:(i=4,function(e,t){var r=e[0],o=e[1],a=Math.sqrt(qt(r,o)),s=t||Qn(new bo(r),i),c=n;if(!n){var l=o[0]-r[0],u=o[1]-r[1];c=Math.atan(u/l)-(l<0?Math.PI:0)}return Jn(s,r,a,c),s})},polygon:{type:"Polygon",geometryName:"Polygon",freehand:!1},freehandpolygon:{type:"Polygon",geometryName:"FreeHandPolygon",freehand:!0},line:{type:"LineString",geometryName:"Line",freehand:!1},freehandline:{type:"LineString",geometryName:"FreeHandLine",freehand:!0}};var i,n;"geometryType"in e||console.error("geometry type must be specified for drawing interaction"),e.geometryType in t||console.error(`unsupported geometry type "${e.geometryType}"`);const r={source:this[Yu]},o=t[e.geometryType];"style"in e&&(o.style=e.style);const a=Object.assign(r,o);this[$u].draw=new is(a);const s=this[ju].getTargetElement();this[$u].draw.on("drawend",e=>{e.feature.setId(Pu()),Tu(s,Au.ROI_DRAWN,zu(e.feature,this[eh]))}),this[ju].addInteraction(this[$u].draw)}deactivateDrawInteraction(){void 0!==this[$u].draw&&(this[ju].removeInteraction(this[$u].draw),this[$u].draw=void 0)}get isDrawInteractionActive(){return void 0!==this[$u].draw}activateSelectInteraction(e={}){this.deactivateSelectInteraction(),this[$u].select=new ps({layers:[this[Ku]]});const t=this[ju].getTargetElement();this[$u].select.on("select",e=>{Tu(t,Au.ROI_SELECTED,zu(e.selected[0],this[eh]))}),this[ju].addInteraction(this[$u].select)}deactivateSelectInteraction(){this[$u].select&&(this[ju].removeInteraction(this[$u].select),this[$u].select=void 0)}get isSelectInteractionActive(){return void 0!==this[$u].select}activateModifyInteraction(e={}){this.deactivateModifyInteraction(),this[$u].modify=new ss({features:this[Xu]}),this[ju].addInteraction(this[$u].modify)}deactivateModifyInteraction(){this[$u].modify&&(this[ju].removeInteraction(this[$u].modify),this[$u].modify=void 0)}get isModifyInteractionActive(){return void 0!==this[$u].modify}getAllROIs(){let e=[];return this[Xu].forEach(t=>{e.push(this.getROI(t.getId()))}),e}get numberOfROIs(){return this[Xu].getLength()}getROI(e){return zu(this[Yu].getFeatureById(e),this[eh])}popROI(){return zu(this[Xu].pop(),this[eh])}addROI(e){const t=function(e,t){const i=e.graphicType,n=e.graphicData;if("POINT"===i){let e=Wu(n,t);return new wn(e)}if("POLYLINE"===i){const e=n.map(e=>Wu(e,t));return new Mo(e)}if("POLYGON"===i){const e=n.map(e=>Wu(e,t));return new Kn([e])}if("ELLIPSE"===i){let e=n.slice(0,2),i=(n.slice(2,4),e[0]),r=e[1],o=[[(i[0]+r[0])/parseFloat(2),(i[1]+r[1])/parseFloat(2),0],r];return o=[...(o=o.map(e=>Wu(e,t)))[0].slice(0,2),...o[1].slice(0,2)],new bo(o,null,"XY")}console.error(`unsupported graphic type "${i}"`)}(e.scoord3d,this[eh]),i=new Eo(t);i.setProperties(e.properties,!0),i.setId(e.uid),this[Xu].push(i)}removeROI(e){const t=this[Yu].getFeatureById(e);this[Xu].remove(t)}removeAllROI(){this[Xu].clear()}hideROIs(){this[Ku].setVisible(!1)}showROIs(){this[Ku].setVisible(!0)}get areROIsVisible(){return this[Ku].getVisible()}get imageMetadata(){return this[eh]}}},oh={Point:Mu,Multipoint:class extends Fu{constructor(e){if(!Array.isArray(e.coordinates))throw new Error("coordinates of Multipoint must be an array");if(void 0!==e.coordinates.find(e=>3!==e.length))throw new Error("coordinates of Multipoint must be an array of (x,y,z) triplets");if(e.coordinates.find(e=>e.some(e=>e<0)))throw new Error("coordinates of Multipoint must be positive numbers");super({coordinates:e.coordinates,frameOfReferenceUID:e.frameOfReferenceUID,fiducialUID:e.fiducialUID})}get graphicType(){return"MULTIPOINT"}},Polyline:Lu,Polygon:wu,Ellipsoid:class extends Fu{constructor(e){if(!Array.isArray(e.coordinates))throw new Error("coordinates of Ellipsoid must be an array");if(6!==e.coordinates.length)throw new Error("coordinates of Ellipsoid must be an array of length 6");if(void 0!==e.coordinates.find(e=>3!==e.length))throw new Error("coordinates of Ellipsoid must be an array of (x,y,z) triplets");if(e.coordinates.find(e=>e.some(e=>e<0)))throw new Error("coordinates of Ellipsoid must be positive numbers");super({coordinates:e.coordinates,frameOfReferenceUID:e.frameOfReferenceUID,fiducialUID:e.fiducialUID})}get graphicType(){return"ELLIPSOID"}},Ellipse:Nu},ah={ROI:Eu};t.api=rh,t.scoord3d=oh,t.roi=ah,Object.defineProperty(t,"__esModule",{value:!0})})(t)}).call(this,i(51))}}]);
//# sourceMappingURL=vendors~dicom-microscopy-viewer.bundle.a7b221b7ff55f42ac881.js.map