UNPKG

@antv/s2

Version:

effective spreadsheet render core lib

1 lines 915 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).S2={})}(this,(function(e){"use strict";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},t(e)}function n(e){var n=function(e,n){if("object"!=t(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,n||"default");if("object"!=t(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==t(n)?n:n+""}function r(e,t,r){return(t=n(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,n(i.key),i)}}function s(e,t,n){return t&&l(e.prototype,t),n&&l(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function c(e,t){if(e){if("string"==typeof e)return u(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}function h(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||c(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e){return d=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},d(e)}function f(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(f=function(){return!!e})()}function p(e,n){if(n&&("object"==t(n)||"function"==typeof n))return n;if(void 0!==n)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function v(e,t,n){return t=d(t),p(e,f()?Reflect.construct(t,n||[],d(e).constructor):t.apply(e,n))}function g(e,t){return g=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},g(e,t)}function y(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&g(e,t)}function m(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,a,l=[],s=!0,u=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=o.call(n)).done)&&(l.push(r.value),l.length!==t);s=!0);}catch(e){u=!0,i=e}finally{try{if(!s&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(u)throw i}}return l}}(e,t)||c(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var C="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function w(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var E={exports:{}};!function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}function i(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,r,o,a){if("function"!=typeof r)throw new TypeError("The listener must be a function");var l=new i(r,o||e,a),s=n?n+t:t;return e._events[s]?e._events[s].fn?e._events[s]=[e._events[s],l]:e._events[s].push(l):(e._events[s]=l,e._eventsCount++),e}function a(e,t){0==--e._eventsCount?e._events=new r:delete e._events[t]}function l(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(n=!1)),l.prototype.eventNames=function(){var e,r,i=[];if(0===this._eventsCount)return i;for(r in e=this._events)t.call(e,r)&&i.push(n?r.slice(1):r);return Object.getOwnPropertySymbols?i.concat(Object.getOwnPropertySymbols(e)):i},l.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var i=0,o=r.length,a=new Array(o);i<o;i++)a[i]=r[i].fn;return a},l.prototype.listenerCount=function(e){var t=n?n+e:e,r=this._events[t];return r?r.fn?1:r.length:0},l.prototype.emit=function(e,t,r,i,o,a){var l=n?n+e:e;if(!this._events[l])return!1;var s,u,c=this._events[l],h=arguments.length;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),h){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,r),!0;case 4:return c.fn.call(c.context,t,r,i),!0;case 5:return c.fn.call(c.context,t,r,i,o),!0;case 6:return c.fn.call(c.context,t,r,i,o,a),!0}for(u=1,s=new Array(h-1);u<h;u++)s[u-1]=arguments[u];c.fn.apply(c.context,s)}else{var d,f=c.length;for(u=0;u<f;u++)switch(c[u].once&&this.removeListener(e,c[u].fn,void 0,!0),h){case 1:c[u].fn.call(c[u].context);break;case 2:c[u].fn.call(c[u].context,t);break;case 3:c[u].fn.call(c[u].context,t,r);break;case 4:c[u].fn.call(c[u].context,t,r,i);break;default:if(!s)for(d=1,s=new Array(h-1);d<h;d++)s[d-1]=arguments[d];c[u].fn.apply(c[u].context,s)}}return!0},l.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},l.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},l.prototype.removeListener=function(e,t,r,i){var o=n?n+e:e;if(!this._events[o])return this;if(!t)return a(this,o),this;var l=this._events[o];if(l.fn)l.fn!==t||i&&!l.once||r&&l.context!==r||a(this,o);else{for(var s=0,u=[],c=l.length;s<c;s++)(l[s].fn!==t||i&&!l[s].once||r&&l[s].context!==r)&&u.push(l[s]);u.length?this._events[o]=1===u.length?u[0]:u:a(this,o)}return this},l.prototype.removeAllListeners=function(e){var t;return e?(t=n?n+e:e,this._events[t]&&a(this,t)):(this._events=new r,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=n,l.EventEmitter=l,e.exports=l}(E);var x=w(E.exports),S=1e-6,T="undefined"!=typeof Float32Array?Float32Array:Array;function b(){var e=new T(9);return T!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e}function L(){var e=new T(16);return T!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function R(e){var t=new T(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function _(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[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function N(e,t,n,r,i,o,a,l,s,u,c,h,d,f,p,v){var g=new T(16);return g[0]=e,g[1]=t,g[2]=n,g[3]=r,g[4]=i,g[5]=o,g[6]=a,g[7]=l,g[8]=s,g[9]=u,g[10]=c,g[11]=h,g[12]=d,g[13]=f,g[14]=p,g[15]=v,g}function I(e,t,n,r,i,o,a,l,s,u,c,h,d,f,p,v,g){return e[0]=t,e[1]=n,e[2]=r,e[3]=i,e[4]=o,e[5]=a,e[6]=l,e[7]=s,e[8]=u,e[9]=c,e[10]=h,e[11]=d,e[12]=f,e[13]=p,e[14]=v,e[15]=g,e}function M(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function O(e,t){if(e===t){var n=t[1],r=t[2],i=t[3],o=t[6],a=t[7],l=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=n,e[6]=t[9],e[7]=t[13],e[8]=r,e[9]=o,e[11]=t[14],e[12]=i,e[13]=a,e[14]=l}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}function k(e,t){var n=t[0],r=t[1],i=t[2],o=t[3],a=t[4],l=t[5],s=t[6],u=t[7],c=t[8],h=t[9],d=t[10],f=t[11],p=t[12],v=t[13],g=t[14],y=t[15],m=n*l-r*a,C=n*s-i*a,w=n*u-o*a,E=r*s-i*l,x=r*u-o*l,S=i*u-o*s,T=c*v-h*p,b=c*g-d*p,L=c*y-f*p,R=h*g-d*v,_=h*y-f*v,N=d*y-f*g,I=m*N-C*_+w*R+E*L-x*b+S*T;return I?(I=1/I,e[0]=(l*N-s*_+u*R)*I,e[1]=(i*_-r*N-o*R)*I,e[2]=(v*S-g*x+y*E)*I,e[3]=(d*x-h*S-f*E)*I,e[4]=(s*L-a*N-u*b)*I,e[5]=(n*N-i*L+o*b)*I,e[6]=(g*w-p*S-y*C)*I,e[7]=(c*S-d*w+f*C)*I,e[8]=(a*_-l*L+u*T)*I,e[9]=(r*L-n*_-o*T)*I,e[10]=(p*x-v*w+y*m)*I,e[11]=(h*w-c*x-f*m)*I,e[12]=(l*b-a*R-s*T)*I,e[13]=(n*R-r*b+i*T)*I,e[14]=(v*C-p*E-g*m)*I,e[15]=(c*E-h*C+d*m)*I,e):null}function A(e){var t=e[0],n=e[1],r=e[2],i=e[3],o=e[4],a=e[5],l=e[6],s=e[7],u=e[8],c=e[9],h=e[10],d=e[11],f=e[12],p=e[13],v=e[14],g=e[15];return(t*a-n*o)*(h*g-d*v)-(t*l-r*o)*(c*g-d*p)+(t*s-i*o)*(c*v-h*p)+(n*l-r*a)*(u*g-d*f)-(n*s-i*a)*(u*v-h*f)+(r*s-i*l)*(u*p-c*f)}function P(e,t,n){var r=t[0],i=t[1],o=t[2],a=t[3],l=t[4],s=t[5],u=t[6],c=t[7],h=t[8],d=t[9],f=t[10],p=t[11],v=t[12],g=t[13],y=t[14],m=t[15],C=n[0],w=n[1],E=n[2],x=n[3];return e[0]=C*r+w*l+E*h+x*v,e[1]=C*i+w*s+E*d+x*g,e[2]=C*o+w*u+E*f+x*y,e[3]=C*a+w*c+E*p+x*m,C=n[4],w=n[5],E=n[6],x=n[7],e[4]=C*r+w*l+E*h+x*v,e[5]=C*i+w*s+E*d+x*g,e[6]=C*o+w*u+E*f+x*y,e[7]=C*a+w*c+E*p+x*m,C=n[8],w=n[9],E=n[10],x=n[11],e[8]=C*r+w*l+E*h+x*v,e[9]=C*i+w*s+E*d+x*g,e[10]=C*o+w*u+E*f+x*y,e[11]=C*a+w*c+E*p+x*m,C=n[12],w=n[13],E=n[14],x=n[15],e[12]=C*r+w*l+E*h+x*v,e[13]=C*i+w*s+E*d+x*g,e[14]=C*o+w*u+E*f+x*y,e[15]=C*a+w*c+E*p+x*m,e}function D(e,t,n){var r,i,o,a,l,s,u,c,h,d,f,p,v=n[0],g=n[1],y=n[2];return t===e?(e[12]=t[0]*v+t[4]*g+t[8]*y+t[12],e[13]=t[1]*v+t[5]*g+t[9]*y+t[13],e[14]=t[2]*v+t[6]*g+t[10]*y+t[14],e[15]=t[3]*v+t[7]*g+t[11]*y+t[15]):(r=t[0],i=t[1],o=t[2],a=t[3],l=t[4],s=t[5],u=t[6],c=t[7],h=t[8],d=t[9],f=t[10],p=t[11],e[0]=r,e[1]=i,e[2]=o,e[3]=a,e[4]=l,e[5]=s,e[6]=u,e[7]=c,e[8]=h,e[9]=d,e[10]=f,e[11]=p,e[12]=r*v+l*g+h*y+t[12],e[13]=i*v+s*g+d*y+t[13],e[14]=o*v+u*g+f*y+t[14],e[15]=a*v+c*g+p*y+t[15]),e}function B(e,t,n){var r=n[0],i=n[1],o=n[2];return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*o,e[9]=t[9]*o,e[10]=t[10]*o,e[11]=t[11]*o,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function F(e,t,n){var r=Math.sin(n),i=Math.cos(n),o=t[4],a=t[5],l=t[6],s=t[7],u=t[8],c=t[9],h=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=o*i+u*r,e[5]=a*i+c*r,e[6]=l*i+h*r,e[7]=s*i+d*r,e[8]=u*i-o*r,e[9]=c*i-a*r,e[10]=h*i-l*r,e[11]=d*i-s*r,e}function z(e,t,n){var r=Math.sin(n),i=Math.cos(n),o=t[0],a=t[1],l=t[2],s=t[3],u=t[8],c=t[9],h=t[10],d=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*i-u*r,e[1]=a*i-c*r,e[2]=l*i-h*r,e[3]=s*i-d*r,e[8]=o*r+u*i,e[9]=a*r+c*i,e[10]=l*r+h*i,e[11]=s*r+d*i,e}function H(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}function G(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function W(e,t,n){var r,i,o,a=n[0],l=n[1],s=n[2],u=Math.hypot(a,l,s);return u<S?null:(a*=u=1/u,l*=u,s*=u,r=Math.sin(t),o=1-(i=Math.cos(t)),e[0]=a*a*o+i,e[1]=l*a*o+s*r,e[2]=s*a*o-l*r,e[3]=0,e[4]=a*l*o-s*r,e[5]=l*l*o+i,e[6]=s*l*o+a*r,e[7]=0,e[8]=a*s*o+l*r,e[9]=l*s*o-a*r,e[10]=s*s*o+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}function V(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r,e[6]=n,e[7]=0,e[8]=0,e[9]=-n,e[10]=r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function U(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=0,e[2]=-n,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=n,e[9]=0,e[10]=r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Y(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=n,e[2]=0,e[3]=0,e[4]=-n,e[5]=r,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function X(e,t,n){var r=t[0],i=t[1],o=t[2],a=t[3],l=r+r,s=i+i,u=o+o,c=r*l,h=r*s,d=r*u,f=i*s,p=i*u,v=o*u,g=a*l,y=a*s,m=a*u;return e[0]=1-(f+v),e[1]=h+m,e[2]=d-y,e[3]=0,e[4]=h-m,e[5]=1-(c+v),e[6]=p+g,e[7]=0,e[8]=d+y,e[9]=p-g,e[10]=1-(c+f),e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e}function j(e,t){return e[0]=t[12],e[1]=t[13],e[2]=t[14],e}function q(e,t){var n=t[0],r=t[1],i=t[2],o=t[4],a=t[5],l=t[6],s=t[8],u=t[9],c=t[10];return e[0]=Math.hypot(n,r,i),e[1]=Math.hypot(o,a,l),e[2]=Math.hypot(s,u,c),e}function K(e,t){var n=new T(3);q(n,t);var r=1/n[0],i=1/n[1],o=1/n[2],a=t[0]*r,l=t[1]*i,s=t[2]*o,u=t[4]*r,c=t[5]*i,h=t[6]*o,d=t[8]*r,f=t[9]*i,p=t[10]*o,v=a+c+p,g=0;return v>0?(g=2*Math.sqrt(v+1),e[3]=.25*g,e[0]=(h-f)/g,e[1]=(d-s)/g,e[2]=(l-u)/g):a>c&&a>p?(g=2*Math.sqrt(1+a-c-p),e[3]=(h-f)/g,e[0]=.25*g,e[1]=(l+u)/g,e[2]=(d+s)/g):c>p?(g=2*Math.sqrt(1+c-a-p),e[3]=(d-s)/g,e[0]=(l+u)/g,e[1]=.25*g,e[2]=(h+f)/g):(g=2*Math.sqrt(1+p-a-c),e[3]=(l-u)/g,e[0]=(d+s)/g,e[1]=(h+f)/g,e[2]=.25*g),e}function $(e,t,n,r,i){var o=t[0],a=t[1],l=t[2],s=t[3],u=o+o,c=a+a,h=l+l,d=o*u,f=o*c,p=o*h,v=a*c,g=a*h,y=l*h,m=s*u,C=s*c,w=s*h,E=r[0],x=r[1],S=r[2],T=i[0],b=i[1],L=i[2],R=(1-(v+y))*E,_=(f+w)*E,N=(p-C)*E,I=(f-w)*x,M=(1-(d+y))*x,O=(g+m)*x,k=(p+C)*S,A=(g-m)*S,P=(1-(d+v))*S;return e[0]=R,e[1]=_,e[2]=N,e[3]=0,e[4]=I,e[5]=M,e[6]=O,e[7]=0,e[8]=k,e[9]=A,e[10]=P,e[11]=0,e[12]=n[0]+T-(R*T+I*b+k*L),e[13]=n[1]+b-(_*T+M*b+A*L),e[14]=n[2]+L-(N*T+O*b+P*L),e[15]=1,e}function Z(e,t){var n=t[0],r=t[1],i=t[2],o=t[3],a=n+n,l=r+r,s=i+i,u=n*a,c=r*a,h=r*l,d=i*a,f=i*l,p=i*s,v=o*a,g=o*l,y=o*s;return e[0]=1-h-p,e[1]=c+y,e[2]=d-g,e[3]=0,e[4]=c-y,e[5]=1-u-p,e[6]=f+v,e[7]=0,e[8]=d+g,e[9]=f-v,e[10]=1-u-h,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Q(e,t,n,r,i){var o,a=1/Math.tan(t/2);return e[0]=a/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=i&&i!==1/0?(o=1/(r-i),e[10]=(i+r)*o,e[14]=2*i*r*o):(e[10]=-1,e[14]=-2*r),e}Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t];return Math.sqrt(e)});var J=Q;function ee(e,t,n,r,i,o,a){var l=1/(t-n),s=1/(r-i),u=1/(o-a);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+n)*l,e[13]=(i+r)*s,e[14]=(a+o)*u,e[15]=1,e}var te=ee;function ne(e,t,n,r,i,o,a){var l=1/(t-n),s=1/(r-i),u=1/(o-a);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=u,e[11]=0,e[12]=(t+n)*l,e[13]=(i+r)*s,e[14]=o*u,e[15]=1,e}function re(e,t,n,r){var i,o,a,l,s,u,c,h,d,f,p=t[0],v=t[1],g=t[2],y=r[0],m=r[1],C=r[2],w=n[0],E=n[1],x=n[2];return Math.abs(p-w)<S&&Math.abs(v-E)<S&&Math.abs(g-x)<S?M(e):(c=p-w,h=v-E,d=g-x,i=m*(d*=f=1/Math.hypot(c,h,d))-C*(h*=f),o=C*(c*=f)-y*d,a=y*h-m*c,(f=Math.hypot(i,o,a))?(i*=f=1/f,o*=f,a*=f):(i=0,o=0,a=0),l=h*a-d*o,s=d*i-c*a,u=c*o-h*i,(f=Math.hypot(l,s,u))?(l*=f=1/f,s*=f,u*=f):(l=0,s=0,u=0),e[0]=i,e[1]=l,e[2]=c,e[3]=0,e[4]=o,e[5]=s,e[6]=h,e[7]=0,e[8]=a,e[9]=u,e[10]=d,e[11]=0,e[12]=-(i*p+o*v+a*g),e[13]=-(l*p+s*v+u*g),e[14]=-(c*p+h*v+d*g),e[15]=1,e)}function ie(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e[6]=t[6]-n[6],e[7]=t[7]-n[7],e[8]=t[8]-n[8],e[9]=t[9]-n[9],e[10]=t[10]-n[10],e[11]=t[11]-n[11],e[12]=t[12]-n[12],e[13]=t[13]-n[13],e[14]=t[14]-n[14],e[15]=t[15]-n[15],e}function oe(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[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]}var ae=P,le=ie,se=Object.freeze({__proto__:null,add:function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e[8]=t[8]+n[8],e[9]=t[9]+n[9],e[10]=t[10]+n[10],e[11]=t[11]+n[11],e[12]=t[12]+n[12],e[13]=t[13]+n[13],e[14]=t[14]+n[14],e[15]=t[15]+n[15],e},adjoint:function(e,t){var n=t[0],r=t[1],i=t[2],o=t[3],a=t[4],l=t[5],s=t[6],u=t[7],c=t[8],h=t[9],d=t[10],f=t[11],p=t[12],v=t[13],g=t[14],y=t[15];return e[0]=l*(d*y-f*g)-h*(s*y-u*g)+v*(s*f-u*d),e[1]=-(r*(d*y-f*g)-h*(i*y-o*g)+v*(i*f-o*d)),e[2]=r*(s*y-u*g)-l*(i*y-o*g)+v*(i*u-o*s),e[3]=-(r*(s*f-u*d)-l*(i*f-o*d)+h*(i*u-o*s)),e[4]=-(a*(d*y-f*g)-c*(s*y-u*g)+p*(s*f-u*d)),e[5]=n*(d*y-f*g)-c*(i*y-o*g)+p*(i*f-o*d),e[6]=-(n*(s*y-u*g)-a*(i*y-o*g)+p*(i*u-o*s)),e[7]=n*(s*f-u*d)-a*(i*f-o*d)+c*(i*u-o*s),e[8]=a*(h*y-f*v)-c*(l*y-u*v)+p*(l*f-u*h),e[9]=-(n*(h*y-f*v)-c*(r*y-o*v)+p*(r*f-o*h)),e[10]=n*(l*y-u*v)-a*(r*y-o*v)+p*(r*u-o*l),e[11]=-(n*(l*f-u*h)-a*(r*f-o*h)+c*(r*u-o*l)),e[12]=-(a*(h*g-d*v)-c*(l*g-s*v)+p*(l*d-s*h)),e[13]=n*(h*g-d*v)-c*(r*g-i*v)+p*(r*d-i*h),e[14]=-(n*(l*g-s*v)-a*(r*g-i*v)+p*(r*s-i*l)),e[15]=n*(l*d-s*h)-a*(r*d-i*h)+c*(r*s-i*l),e},clone:R,copy:_,create:L,determinant:A,equals:function(e,t){var n=e[0],r=e[1],i=e[2],o=e[3],a=e[4],l=e[5],s=e[6],u=e[7],c=e[8],h=e[9],d=e[10],f=e[11],p=e[12],v=e[13],g=e[14],y=e[15],m=t[0],C=t[1],w=t[2],E=t[3],x=t[4],T=t[5],b=t[6],L=t[7],R=t[8],_=t[9],N=t[10],I=t[11],M=t[12],O=t[13],k=t[14],A=t[15];return Math.abs(n-m)<=S*Math.max(1,Math.abs(n),Math.abs(m))&&Math.abs(r-C)<=S*Math.max(1,Math.abs(r),Math.abs(C))&&Math.abs(i-w)<=S*Math.max(1,Math.abs(i),Math.abs(w))&&Math.abs(o-E)<=S*Math.max(1,Math.abs(o),Math.abs(E))&&Math.abs(a-x)<=S*Math.max(1,Math.abs(a),Math.abs(x))&&Math.abs(l-T)<=S*Math.max(1,Math.abs(l),Math.abs(T))&&Math.abs(s-b)<=S*Math.max(1,Math.abs(s),Math.abs(b))&&Math.abs(u-L)<=S*Math.max(1,Math.abs(u),Math.abs(L))&&Math.abs(c-R)<=S*Math.max(1,Math.abs(c),Math.abs(R))&&Math.abs(h-_)<=S*Math.max(1,Math.abs(h),Math.abs(_))&&Math.abs(d-N)<=S*Math.max(1,Math.abs(d),Math.abs(N))&&Math.abs(f-I)<=S*Math.max(1,Math.abs(f),Math.abs(I))&&Math.abs(p-M)<=S*Math.max(1,Math.abs(p),Math.abs(M))&&Math.abs(v-O)<=S*Math.max(1,Math.abs(v),Math.abs(O))&&Math.abs(g-k)<=S*Math.max(1,Math.abs(g),Math.abs(k))&&Math.abs(y-A)<=S*Math.max(1,Math.abs(y),Math.abs(A))},exactEquals:oe,frob:function(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15])},fromQuat:Z,fromQuat2:function(e,t){var n=new T(3),r=-t[0],i=-t[1],o=-t[2],a=t[3],l=t[4],s=t[5],u=t[6],c=t[7],h=r*r+i*i+o*o+a*a;return h>0?(n[0]=2*(l*a+c*r+s*o-u*i)/h,n[1]=2*(s*a+c*i+u*r-l*o)/h,n[2]=2*(u*a+c*o+l*i-s*r)/h):(n[0]=2*(l*a+c*r+s*o-u*i),n[1]=2*(s*a+c*i+u*r-l*o),n[2]=2*(u*a+c*o+l*i-s*r)),X(e,t,n),e},fromRotation:W,fromRotationTranslation:X,fromRotationTranslationScale:function(e,t,n,r){var i=t[0],o=t[1],a=t[2],l=t[3],s=i+i,u=o+o,c=a+a,h=i*s,d=i*u,f=i*c,p=o*u,v=o*c,g=a*c,y=l*s,m=l*u,C=l*c,w=r[0],E=r[1],x=r[2];return e[0]=(1-(p+g))*w,e[1]=(d+C)*w,e[2]=(f-m)*w,e[3]=0,e[4]=(d-C)*E,e[5]=(1-(h+g))*E,e[6]=(v+y)*E,e[7]=0,e[8]=(f+m)*x,e[9]=(v-y)*x,e[10]=(1-(h+p))*x,e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e},fromRotationTranslationScaleOrigin:$,fromScaling:G,fromTranslation:H,fromValues:N,fromXRotation:V,fromYRotation:U,fromZRotation:Y,frustum:function(e,t,n,r,i,o,a){var l=1/(n-t),s=1/(i-r),u=1/(o-a);return e[0]=2*o*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*o*s,e[6]=0,e[7]=0,e[8]=(n+t)*l,e[9]=(i+r)*s,e[10]=(a+o)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=a*o*2*u,e[15]=0,e},getRotation:K,getScaling:q,getTranslation:j,identity:M,invert:k,lookAt:re,mul:ae,multiply:P,multiplyScalar:function(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*n,e[9]=t[9]*n,e[10]=t[10]*n,e[11]=t[11]*n,e[12]=t[12]*n,e[13]=t[13]*n,e[14]=t[14]*n,e[15]=t[15]*n,e},multiplyScalarAndAdd:function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e[6]=t[6]+n[6]*r,e[7]=t[7]+n[7]*r,e[8]=t[8]+n[8]*r,e[9]=t[9]+n[9]*r,e[10]=t[10]+n[10]*r,e[11]=t[11]+n[11]*r,e[12]=t[12]+n[12]*r,e[13]=t[13]+n[13]*r,e[14]=t[14]+n[14]*r,e[15]=t[15]+n[15]*r,e},ortho:te,orthoNO:ee,orthoZO:ne,perspective:J,perspectiveFromFieldOfView:function(e,t,n,r){var i=Math.tan(t.upDegrees*Math.PI/180),o=Math.tan(t.downDegrees*Math.PI/180),a=Math.tan(t.leftDegrees*Math.PI/180),l=Math.tan(t.rightDegrees*Math.PI/180),s=2/(a+l),u=2/(i+o);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-(a-l)*s*.5,e[9]=(i-o)*u*.5,e[10]=r/(n-r),e[11]=-1,e[12]=0,e[13]=0,e[14]=r*n/(n-r),e[15]=0,e},perspectiveNO:Q,perspectiveZO:function(e,t,n,r,i){var o,a=1/Math.tan(t/2);return e[0]=a/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=i&&i!==1/0?(o=1/(r-i),e[10]=i*o,e[14]=i*r*o):(e[10]=-1,e[14]=-r),e},rotate:function(e,t,n,r){var i,o,a,l,s,u,c,h,d,f,p,v,g,y,m,C,w,E,x,T,b,L,R,_,N=r[0],I=r[1],M=r[2],O=Math.hypot(N,I,M);return O<S?null:(N*=O=1/O,I*=O,M*=O,i=Math.sin(n),a=1-(o=Math.cos(n)),l=t[0],s=t[1],u=t[2],c=t[3],h=t[4],d=t[5],f=t[6],p=t[7],v=t[8],g=t[9],y=t[10],m=t[11],C=N*N*a+o,w=I*N*a+M*i,E=M*N*a-I*i,x=N*I*a-M*i,T=I*I*a+o,b=M*I*a+N*i,L=N*M*a+I*i,R=I*M*a-N*i,_=M*M*a+o,e[0]=l*C+h*w+v*E,e[1]=s*C+d*w+g*E,e[2]=u*C+f*w+y*E,e[3]=c*C+p*w+m*E,e[4]=l*x+h*T+v*b,e[5]=s*x+d*T+g*b,e[6]=u*x+f*T+y*b,e[7]=c*x+p*T+m*b,e[8]=l*L+h*R+v*_,e[9]=s*L+d*R+g*_,e[10]=u*L+f*R+y*_,e[11]=c*L+p*R+m*_,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)},rotateX:F,rotateY:z,rotateZ:function(e,t,n){var r=Math.sin(n),i=Math.cos(n),o=t[0],a=t[1],l=t[2],s=t[3],u=t[4],c=t[5],h=t[6],d=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*i+u*r,e[1]=a*i+c*r,e[2]=l*i+h*r,e[3]=s*i+d*r,e[4]=u*i-o*r,e[5]=c*i-a*r,e[6]=h*i-l*r,e[7]=d*i-s*r,e},scale:B,set:I,str:function(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"},sub:le,subtract:ie,targetTo:function(e,t,n,r){var i=t[0],o=t[1],a=t[2],l=r[0],s=r[1],u=r[2],c=i-n[0],h=o-n[1],d=a-n[2],f=c*c+h*h+d*d;f>0&&(c*=f=1/Math.sqrt(f),h*=f,d*=f);var p=s*d-u*h,v=u*c-l*d,g=l*h-s*c;return(f=p*p+v*v+g*g)>0&&(p*=f=1/Math.sqrt(f),v*=f,g*=f),e[0]=p,e[1]=v,e[2]=g,e[3]=0,e[4]=h*g-d*v,e[5]=d*p-c*g,e[6]=c*v-h*p,e[7]=0,e[8]=c,e[9]=h,e[10]=d,e[11]=0,e[12]=i,e[13]=o,e[14]=a,e[15]=1,e},translate:D,transpose:O});function ue(){var e=new T(3);return T!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function ce(e){var t=new T(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function he(e){var t=e[0],n=e[1],r=e[2];return Math.hypot(t,n,r)}function de(e,t,n){var r=new T(3);return r[0]=e,r[1]=t,r[2]=n,r}function fe(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function pe(e,t,n,r){return e[0]=t,e[1]=n,e[2]=r,e}function ve(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e}function ge(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e}function ye(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function me(e,t){var n=t[0],r=t[1],i=t[2],o=n*n+r*r+i*i;return o>0&&(o=1/Math.sqrt(o)),e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o,e}function Ce(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function we(e,t,n){var r=t[0],i=t[1],o=t[2],a=n[0],l=n[1],s=n[2];return e[0]=i*s-o*l,e[1]=o*a-r*s,e[2]=r*l-i*a,e}function Ee(e,t,n,r){var i=t[0],o=t[1],a=t[2];return e[0]=i+r*(n[0]-i),e[1]=o+r*(n[1]-o),e[2]=a+r*(n[2]-a),e}function xe(e,t,n){var r=t[0],i=t[1],o=t[2],a=n[3]*r+n[7]*i+n[11]*o+n[15];return a=a||1,e[0]=(n[0]*r+n[4]*i+n[8]*o+n[12])/a,e[1]=(n[1]*r+n[5]*i+n[9]*o+n[13])/a,e[2]=(n[2]*r+n[6]*i+n[10]*o+n[14])/a,e}function Se(e,t){var n=e[0],r=e[1],i=e[2],o=t[0],a=t[1],l=t[2];return Math.abs(n-o)<=S*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(r-a)<=S*Math.max(1,Math.abs(r),Math.abs(a))&&Math.abs(i-l)<=S*Math.max(1,Math.abs(i),Math.abs(l))}var Te=ge,be=function(e,t){var n=t[0]-e[0],r=t[1]-e[1],i=t[2]-e[2];return Math.hypot(n,r,i)},Le=he;function Re(){var e=new T(4);return T!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function _e(e,t,n,r){var i=new T(4);return i[0]=e,i[1]=t,i[2]=n,i[3]=r,i}function Ne(e,t,n){var r=t[0],i=t[1],o=t[2],a=t[3];return e[0]=n[0]*r+n[4]*i+n[8]*o+n[12]*a,e[1]=n[1]*r+n[5]*i+n[9]*o+n[13]*a,e[2]=n[2]*r+n[6]*i+n[10]*o+n[14]*a,e[3]=n[3]*r+n[7]*i+n[11]*o+n[15]*a,e}function Ie(){var e=new T(4);return T!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function Me(e,t,n){n*=.5;var r=Math.sin(n);return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=Math.cos(n),e}function Oe(e,t,n){var r=t[0],i=t[1],o=t[2],a=t[3],l=n[0],s=n[1],u=n[2],c=n[3];return e[0]=r*c+a*l+i*u-o*s,e[1]=i*c+a*s+o*l-r*u,e[2]=o*c+a*u+r*s-i*l,e[3]=a*c-r*l-i*s-o*u,e}function ke(e,t){var n=t[0],r=t[1],i=t[2],o=t[3],a=n*n+r*r+i*i+o*o,l=a?1/a:0;return e[0]=-n*l,e[1]=-r*l,e[2]=-i*l,e[3]=o*l,e}function Ae(e,t,n,r){var i=.5*Math.PI/180;t*=i,n*=i,r*=i;var o=Math.sin(t),a=Math.cos(t),l=Math.sin(n),s=Math.cos(n),u=Math.sin(r),c=Math.cos(r);return e[0]=o*s*c-a*l*u,e[1]=a*l*c+o*s*u,e[2]=a*s*u-o*l*c,e[3]=a*s*c+o*l*u,e}ue(),function(){var e=Re()}();var Pe=_e,De=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},Be=function(e,t,n,r,i){return e[0]=t,e[1]=n,e[2]=r,e[3]=i,e},Fe=Oe,ze=function(e,t){var n=t[0],r=t[1],i=t[2],o=t[3],a=n*n+r*r+i*i+o*o;return a>0&&(a=1/Math.sqrt(a)),e[0]=n*a,e[1]=r*a,e[2]=i*a,e[3]=o*a,e};function He(){var e=new T(2);return T!=Float32Array&&(e[0]=0,e[1]=0),e}ue(),de(1,0,0),de(0,1,0),Ie(),Ie(),b(),function(){var e=He()}();var Ge=function(e){return"function"==typeof e},We=function(e){return null==e},Ve={}.toString,Ue=function(e,t){return Ve.call(e)==="[object "+t+"]"},Ye=function(e){return Array.isArray?Array.isArray(e):Ue(e,"Array")},Xe=function(e){if(Ye(e))return e.reduce((function(e,t){return Math.max(e,t)}),e[0])},je=function(e){if(Ye(e))return e.reduce((function(e,t){return Math.min(e,t)}),e[0])},qe=function(e){return Ue(e,"String")},Ke=function(e,t,n){return e<t?t:e>n?n:e},$e=function(e){return Ue(e,"Number")},Ze=1e-5;function Qe(e,t,n){return void 0===n&&(n=Ze),Math.abs(e-t)<n}var Je=function(e,t){return(e%t+t)%t},et=function(e){return Ue(e,"Boolean")},tt=function(e){return void 0===e},nt=function(e,t){return nt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},nt(e,t)};function rt(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}nt(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var it=function(){return it=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},it.apply(this,arguments)};function ot(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}function at(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{s(r.next(e))}catch(e){o(e)}}function l(e){try{s(r.throw(e))}catch(e){o(e)}}function s(e){e.done?i(e.value):function(e){return e instanceof n?e:new n((function(t){t(e)}))}(e.value).then(a,l)}s((r=r.apply(e,t||[])).next())}))}function lt(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function l(l){return function(s){return function(l){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,l[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&l[0]?r.return:l[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,l[1])).done)return i;switch(r=0,i&&(l=[2&l[0],i.value]),l[0]){case 0:case 1:i=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,r=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==l[0]&&2!==l[0])){a=0;continue}if(3===l[0]&&(!i||l[1]>i[0]&&l[1]<i[3])){a.label=l[1];break}if(6===l[0]&&a.label<i[1]){a.label=i[1],i=l;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(l);break}i[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],r=0}finally{n=i=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,s])}}}function st(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function ut(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a}function ct(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}"function"==typeof SuppressedError&&SuppressedError;var ht={x1:0,y1:0,x2:0,y2:0,x:0,y:0,qx:null,qy:null};function dt(e,t,n){if(e[n].length>7){e[n].shift();for(var r=e[n],i=n;r.length;)t[n]="A",e.splice(i+=1,0,["C"].concat(r.splice(0,6)));e.splice(n,1)}}var ft={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0};function pt(e){return Array.isArray(e)&&e.every((function(e){var t=e[0].toLowerCase();return ft[t]===e.length-1&&"achlmqstvz".includes(t)}))}function vt(e){return pt(e)&&e.every((function(e){var t=e[0];return t===t.toUpperCase()}))}function gt(e){return vt(e)&&e.every((function(e){var t=e[0];return"ACLMQZ".includes(t)}))}function yt(e){for(var t=e.pathValue[e.segmentStart],n=t.toLowerCase(),r=e.data;r.length>=ft[n]&&("m"===n&&r.length>2?(e.segments.push([t].concat(r.splice(0,2))),n="l",t="m"===t?"l":"L"):e.segments.push([t].concat(r.splice(0,ft[n]))),ft[n]););}function mt(e){var t=e.index,n=e.pathValue,r=n.charCodeAt(t);return 48===r?(e.param=0,void(e.index+=1)):49===r?(e.param=1,void(e.index+=1)):void(e.err='[path-util]: invalid Arc flag "'+n[t]+'", expecting 0 or 1 at index '+t)}function Ct(e){return e>=48&&e<=57||43===e||45===e||46===e}function wt(e){return e>=48&&e<=57}function Et(e){var t,n=e.max,r=e.pathValue,i=e.index,o=i,a=!1,l=!1,s=!1,u=!1;if(o>=n)e.err="[path-util]: Invalid path value at index "+o+', "pathValue" is missing param';else if(43!==(t=r.charCodeAt(o))&&45!==t||(o+=1,t=r.charCodeAt(o)),wt(t)||46===t){if(46!==t){if(a=48===t,o+=1,t=r.charCodeAt(o),a&&o<n&&t&&wt(t))return void(e.err="[path-util]: Invalid path value at index "+i+', "'+r[i]+'" illegal number');for(;o<n&&wt(r.charCodeAt(o));)o+=1,l=!0;t=r.charCodeAt(o)}if(46===t){for(u=!0,o+=1;wt(r.charCodeAt(o));)o+=1,s=!0;t=r.charCodeAt(o)}if(101===t||69===t){if(u&&!l&&!s)return void(e.err="[path-util]: Invalid path value at index "+o+', "'+r[o]+'" invalid float exponent');if(o+=1,43!==(t=r.charCodeAt(o))&&45!==t||(o+=1),!(o<n&&wt(r.charCodeAt(o))))return void(e.err="[path-util]: Invalid path value at index "+o+', "'+r[o]+'" invalid integer exponent');for(;o<n&&wt(r.charCodeAt(o));)o+=1}e.index=o,e.param=+e.pathValue.slice(i,o)}else e.err="[path-util]: Invalid path value at index "+o+', "'+r[o]+'" is not a number'}function xt(e){for(var t,n=e.pathValue,r=e.max;e.index<r&&(10===(t=n.charCodeAt(e.index))||13===t||8232===t||8233===t||32===t||9===t||11===t||12===t||160===t||t>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(t));)e.index+=1}function St(e){var t=e.max,n=e.pathValue,r=e.index,i=n.charCodeAt(r),o=ft[n[r].toLowerCase()];if(e.segmentStart=r,function(e){switch(32|e){case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:return!0;default:return!1}}(i))if(e.index+=1,xt(e),e.data=[],o){for(;;){for(var a=o;a>0;a-=1){if(97!=(32|i)||3!==a&&4!==a?Et(e):mt(e),e.err.length)return;e.data.push(e.param),xt(e),e.index<t&&44===n.charCodeAt(e.index)&&(e.index+=1,xt(e))}if(e.index>=e.max)break;if(!Ct(n.charCodeAt(e.index)))break}yt(e)}else yt(e);else e.err='[path-util]: Invalid path value "'+n[r]+'" is not a path command'}var Tt=function(e){this.pathValue=e,this.segments=[],this.max=e.length,this.index=0,this.param=0,this.segmentStart=0,this.data=[],this.err=""};function bt(e){if(vt(e))return[].concat(e);var t=function(e){if(pt(e))return[].concat(e);var t=new Tt(e);for(xt(t);t.index<t.max&&!t.err.length;)St(t);return t.err?t.err:t.segments}(e),n=0,r=0,i=0,o=0;return t.map((function(e){var t,a=e.slice(1).map(Number),l=e[0],s=l.toUpperCase();if("M"===l)return n=a[0],r=a[1],i=n,o=r,["M",n,r];if(l!==s)switch(s){case"A":t=[s,a[0],a[1],a[2],a[3],a[4],a[5]+n,a[6]+r];break;case"V":t=[s,a[0]+r];break;case"H":t=[s,a[0]+n];break;default:var u=a.map((function(e,t){return e+(t%2?r:n)}));t=[s].concat(u)}else t=[s].concat(a);var c=t.length;switch(s){case"Z":n=i,r=o;break;case"H":n=t[1];break;case"V":r=t[1];break;default:n=t[c-2],r=t[c-1],"M"===s&&(i=n,o=r)}return t}))}function Lt(e,t){var n=e[0],r=t.x1,i=t.y1,o=t.x2,a=t.y2,l=e.slice(1).map(Number),s=e;if("TQ".includes(n)||(t.qx=null,t.qy=null),"H"===n)s=["L",e[1],i];else if("V"===n)s=["L",r,e[1]];else if("S"===n){var u=2*r-o,c=2*i-a;t.x1=u,t.y1=c,s=["C",u,c].concat(l)}else if("T"===n){var h=2*r-t.qx,d=2*i-t.qy;t.qx=h,t.qy=d,s=["Q",h,d].concat(l)}else if("Q"===n){var f=l[0],p=l[1];t.qx=f,t.qy=p}return s}function Rt(e){if(gt(e))return[].concat(e);for(var t=bt(e),n=it({},ht),r=0;r<t.length;r+=1){t[r]=Lt(t[r],n);var i=t[r],o=i.length;n.x1=+i[o-2],n.y1=+i[o-1],n.x2=+i[o-4]||n.x1,n.y2=+i[o-3]||n.y1}return t}function _t(e,t,n){return{x:e*Math.cos(n)-t*Math.sin(n),y:e*Math.sin(n)+t*Math.cos(n)}}function Nt(e,t,n,r,i,o,a,l,s,u){var c,h,d,f,p,v=e,g=t,y=n,m=r,C=l,w=s,E=120*Math.PI/180,x=Math.PI/180*(+i||0),S=[];if(u)h=u[0],d=u[1],f=u[2],p=u[3];else{v=(c=_t(v,g,-x)).x,g=c.y;var T=(v-(C=(c=_t(C,w,-x)).x))/2,b=(g-(w=c.y))/2,L=T*T/(y*y)+b*b/(m*m);L>1&&(y*=L=Math.sqrt(L),m*=L);var R=y*y,_=m*m,N=(o===a?-1:1)*Math.sqrt(Math.abs((R*_-R*b*b-_*T*T)/(R*b*b+_*T*T)));f=N*y*b/m+(v+C)/2,p=N*-m*T/y+(g+w)/2,h=Math.asin(((g-p)/m*Math.pow(10,9)|0)/Math.pow(10,9)),d=Math.asin(((w-p)/m*Math.pow(10,9)|0)/Math.pow(10,9)),h=v<f?Math.PI-h:h,d=C<f?Math.PI-d:d,h<0&&(h=2*Math.PI+h),d<0&&(d=2*Math.PI+d),a&&h>d&&(h-=2*Math.PI),!a&&d>h&&(d-=2*Math.PI)}var I=d-h;if(Math.abs(I)>E){var M=d,O=C,k=w;d=h+E*(a&&d>h?1:-1),S=Nt(C=f+y*Math.cos(d),w=p+m*Math.sin(d),y,m,i,0,a,O,k,[d,M,f,p])}I=d-h;var A=Math.cos(h),P=Math.sin(h),D=Math.cos(d),B=Math.sin(d),F=Math.tan(I/4),z=4/3*y*F,H=4/3*m*F,G=[v,g],W=[v+z*P,g-H*A],V=[C+z*B,w-H*D],U=[C,w];if(W[0]=2*G[0]-W[0],W[1]=2*G[1]-W[1],u)return W.concat(V,U,S);for(var Y=[],X=0,j=(S=W.concat(V,U,S)).length;X<j;X+=1)Y[X]=X%2?_t(S[X-1],S[X],x).y:_t(S[X],S[X+1],x).x;return Y}function It(e,t,n){var r=e[0],i=e[1];return[r+(t[0]-r)*n,i+(t[1]-i)*n]}var Mt=function(e,t,n,r){return ct(ct([],It([e,t],[n,r],.5),!0),[n,r,n,r],!1)};function Ot(e,t){var n,r,i,o,a,l,s,u,c,h=e[0],d=e.slice(1).map(Number),f=d[0],p=d[1],v=t.x1,g=t.y1,y=t.x,m=t.y;switch("TQ".includes(h)||(t.qx=null,t.qy=null),h){case"M":return t.x=f,t.y=p,e;case"A":return n=[v,g].concat(d),["C"].concat(Nt(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9]));case"Q":return t.qx=f,t.qy=p,n=[v,g].concat(d),["C"].concat((r=n[0],i=n[1],o=n[2],a=n[3],l=n[4],s=n[5],[(u=1/3)*r+(c=2/3)*o,u*i+c*a,u*l+c*o,u*s+c*a,l,s]));case"L":return["C"].concat(Mt(v,g,f,p));case"Z":return v===y&&g===m?["C",v,g,y,m,y,m]:["C"].concat(Mt(v,g,y,m))}return e}function kt(e,t){if(void 0===t&&(t=!1),function(e){return gt(e)&&e.every((function(e){var t=e[0];return"MC".includes(t)}))}(e)){var n=[].concat(e);return t?[n,[]]:n}for(var r,i,o=Rt(e),a=it({},ht),l=[],s="",u=o.length,c=[],h=0;h<u;h+=1){o[h]&&(s=o[h][0]),l[h]=s;var d=Ot(o[h],a);o[h]=d,dt(o,l,h),u=o.length,"Z"===s&&c.push(h),i=(r=o[h]).length,a.x1=+r[i-2],a.y1=+r[i-1],a.x2=+r[i-4]||a.x1,a.y2=+r[i-3]||a.y1}return t?[o,c]:o}function At(e,t){return Math.sqrt((e[0]-t[0])*(e[0]-t[0])+(e[1]-t[1])*(e[1]-t[1]))}function Pt(e,t,n,r,i){var o=At([e,t],[n,r]),a={x:0,y:0};if("number"==typeof i)if(i<=0)a={x:e,y:t};else if(i>=o)a={x:n,y:r};else{var l=It([e,t],[n,r],i/o);a={x:l[0],y:l[1]}}return{length:o,point:a,min:{x:Math.min(e,n),y:Math.min(t,r)},max:{x:Math.max(e,n),y:Math.max(t,r)}}}function Dt(e,t){var n=e.x,r=e.y,i=t.x,o=t.y,a=n*i+r*o,l=Math.sqrt((Math.pow(n,2)+Math.pow(r,2))*(Math.pow(i,2)+Math.pow(o,2)));return(n*o-r*i<0?-1:1)*Math.acos(a/l)}function Bt(e,t,n,r,i,o,a,l,s,u){var c=Math.abs,h=Math.sin,d=Math.cos,f=Math.sqrt,p=Math.PI,v=c(n),g=c(r),y=(i%360+360)%360*(p/180);if(e===l&&t===s)return{x:e,y:t};if(0===v||0===g)return Pt(e,t,l,s,u).point;var m=(e-l)/2,C=(t-s)/2,w={x:d(y)*m+h(y)*C,y:-h(y)*m+d(y)*C},E=Math.pow(w.x,2)/Math.pow(v,2)+Math.pow(w.y,2)/Math.pow(g,2);E>1&&(v*=f(E),g*=f(E));var x=(Math.pow(v,2)*Math.pow(g,2)-Math.pow(v,2)*Math.pow(w.y,2)-Math.pow(g,2)*Math.pow(w.x,2))/(Math.pow(v,2)*Math.pow(w.y,2)+Math.pow(g,2)*Math.pow(w.x,2)),S=(o!==a?1:-1)*f(x=x<0?0:x),T=S*(v*w.y/g),b=S*(-g*w.x/v),L=d(y)*T-h(y)*b+(e+l)/2,R=h(y)*T+d(y)*b+(t+s)/2,_={x:(w.x-T)/v,y:(w.y-b)/g},N=Dt({x:1,y:0},_),I=Dt(_,{x:(-w.x-T)/v,y:(-w.y-b)/g});!a&&I>0?I-=2*p:a&&I<0&&(I+=2*p);var M=N+(I%=2*p)*u,O=v*d(M),k=g*h(M);return{x:d(y)*O-h(y)*k+L,y:h(y)*O+d(y)*k+R}}function Ft(e,t,n,r,i,o,a,l,s,u,c){var h,d=c.bbox,f=void 0===d||d,p=c.length,v=void 0===p||p,g=c.sampleSize,y=void 0===g?30:g,m="number"==typeof u,C=e,w=t,E=0,x=[C,w,E],S=[C,w],T={x:0,y:0},b=[{x:C,y:w}];m&&u<=0&&(T={x:C,y:w});for(var L=0;L<=y;L+=1){if(C=(h=Bt(e,t,n,r,i,o,a,l,s,L/y)).x,w=h.y,f&&b.push({x:C,y:w}),v&&(E+=At(S,[C,w])),S=[C,w],m&&E>=u&&u>x[2]){var R=(E-u)/(E-x[2]);T={x:S[0]*(1-R)+x[0]*R,y:S[1]*(1-R)+x[1]*R}}x=[C,w,E]}return m&&u>=E&&(T={x:l,y:s}),{length:E,point:T,min:{x:Math.min.apply(null,b.map((function(e){return e.x}))),y:Math.min.apply(null,b.map((function(e){return e.y})))},max:{x:Math.max.apply(null,b.map((function(e){return e.x}))),y:Math.max.apply(null,b.map((function(e){return e.y})))}}}function zt(e,t,n,r,i,o,a,l,s){var u=1-s;return{x:Math.pow(u,3)*e+3*Math.pow(u,2)*s*n+3*u*Math.pow(s,2)*i+Math.pow(s,3)*a,y:Math.pow(u,3)*t+3*Math.pow(u,2)*s*r+3*u*Math.pow(s,2)*o+Math.pow(s,3)*l}}function Ht(e,t,n,r,i,o,a,l,s,u){var c,h=u.bbox,d=void 0===h||h,f=u.length,p=void 0===f||f,v=u.sampleSize,g=void 0===v?10:v,y="number"==typeof s,m=e,C=t,w=0,E=[m,C,w],x=[m,C],S={x:0,y:0},T=[{x:m,y:C}];y&&s<=0&&(S={x:m,y:C});for(var b=0;b<=g;b+=1){if(m=(c=zt(e,t,n,r,i,o,a,l,b/g)).x,C=c.y,d&&T.push({x:m,y:C}),p&&(w+=At(x,[m,C])),x=[m,C],y&&w>=s&&s>E[2]){var L=(w-s)/(w-E[2]);S={x:x[0]*(1-L)+E[0]*L,y:x[1]*(1-L)+E[1]*L}}E=[m,C,w]}return y&&s>=w&&(S={x:a,y:l}),{length:w,point:S,min:{x:Math.min.apply(null,T.map((function(e){return e.x}))),y:Math.min.apply(null,T.map((function(e){return e.y})))},max:{x:Math.max.apply(null,T.map((function(e){return e.x}))),y:Math.max.apply(null,T.map((function(e){return e.y})))}}}function Gt(e,t,n,r,i,o,a){var l=1-a;return{x:Math.pow(l,2)*e+2*l*a*n+Math.pow(a,2)*i,y:Math.pow(l,2)*t+2*l*a*r+Math.pow(a,2)*o}}function Wt(e,t,n,r,i,o,a,l){var s,u=l.bbox,c=void 0===u||u,h=l.length,d=void 0===h||h,f=l.sampleSize,p=void 0===f?10:f,v="number"==typeof a,g=e,y=t,m=0,C=[g,y,m],w=[g,y],E={x:0,y:0},x=[{x:g,y:y}];v&&a<=0&&(E={x:g,y:y});for(var S=0;S<=p;S+=1){if(g=(s=Gt(e,t,n,r,i,o,S/p)).x,y=s.y,c&&x.push({x:g,y:y}),d&&(m+=At(w,[g,y])),w=[g,y],v&&m>=a&&a>C[2]){var T=(m-a)/(m-C[2]);E={x:w[0]*(1-T)+C[0]*T,y:w[1]*(1-T)+C[1]*T}}C=[g,y,m]}return v&&a>=m&&(E={x:i,y:o}),{length:m,point:E,min:{x:Math.min.apply(null,x.map((function(e){return e.x}))),y:Math.min.apply(null,x.map((function(e){return e.y})))},max:{x:Math.max.apply(null,x.map((function(e){return e.x}))),y:Math.max.apply(null,x.map((function(e){return e.y})))}}}function Vt(e,t,n){for(var r,i,o,a,l,s,u,c,h,d=Rt(e),f="number"==typeof t,p=[],v=0,g=0,y=0,m=0,C=[],w=[],E=0,x={x:0,y:0},S=x,T=x,b=x,L=0,R=0,_=d.length;R<_;R+=1)p=(u="M"===(c=(h=d[R])[0]))?p:[v,g].concat(h.slice(1)),u?(S=x={x:y=h[1],y:m=h[2]},E=0,f&&t<.001&&(b=x)):"L"===c?(E=(r=Pt(p[0],p[1],p[2],p[3],(t||0)-L)).length,x=r.min,S=r.max,T=r.point):"A"===c?(E=(i=Ft(p[0],p[1],p[2],p[3],p[4],p[5],p[6],p[7],p[8],(t||0)-L,n||{})).length,x=i.min,S=i.max,T=i.point):"C"===c?(E=(o=Ht(p[0],p[1],p[2],p[3],p[4],p[5],p[6],p[7],(t||0)-L,n||{})).length,x=o.min,S=o.max,T=o.point):"Q"===c?(E=(a=Wt(p[0],p[1],p[2],p[3],p[4],p[5],(t||0)-L,n||{})).length,x=a.min,S=a.max,T=a.point):"Z"===c&&(E=(l=Pt((p=[v,g,y,m])[0],p[1],p[2],p[3],(t||0)-L)).length,x=l.min,S=l.max,T=l.point),f&&L<t&&L+E>=t&&(b=T),w.push(S),C.push(x),L+=E,v=(s="Z"!==c?h.slice(-2):[y,m])[0],g=s[1];return f&&t>=L&&(b={x:v,y:g}),{length:L,point:b,min:{x:Math.min.apply(null,C.map((function(e){return e.x}))),y:Math.min.apply(null,C.map((function(e){return e.y})))},max:{x:Math.max.apply(null,w.map((function(e){return e.x}))),y:Math.max.apply(null,w.map((function(e){return e.y})))}}}function Ut(e){return function(e){var t=0,n=0,r=0;return kt(e).map((function(e){var i;if("M"===e[0])return t=e[1],n=e[2],0;var o=e.slice(1),a=o[0],l=o[1],s=o[2],u=o[3],c=o[4],h=o[5];return r=function(e,t,n,r,i,o,a,l){return 3*((l-t)*(n+i)-(a-e)*(r+o)+r*(e-i)-n*(t-o)+l*(i+e/3)-a*(o+t/3))/20}(t,n,a,l,s,u,c,h),i=e.slice(-2),t=i[0],n=i[1],r})).reduce((function(e,t){return e+t}),0)}(e)>=0}function Yt(e){return e.map((function(e,t,n){var r=t&&n[t-1].slice(-2).concat(e.slice(1)),i=t?Ht(r[0],r[1],r[2],r[3],r[4],r[5],r[6],r[7],r[8],{bbox:!1}).length:0;return{s:e,ss:t?i?function(e,t){void 0===t&&(t=.5);var n=e.slice(0,2),r=e.slice(2,4),i=e.slice(4,6),o=e.slice(6,8),a=It(n,r,t),l=It(r,i,t),s=It(i,o,t),u=It(a,l,t),c=It(l,s,t),h=It(u,c,t);return[["C"].concat(a,u,h),["C"].concat(c,s,o)]}(r):[e,e]:[e],l:i}}))}function Xt(e,t,n){var r=Yt(e),i=Yt(t),o=r.length,a=i.length,l=r.filter((function(e){return e.l})).length,s=i.filter((function(e){return e.l})).length,u=r.filter((function(e){return e.l})).reduce((function(e,t){return e+t.l}),0)/l||0,c=i.filter((function(e){return e.l})).reduce((function(e,t){return e+t.l}),0)/s||0,h=n||Math.max(o,a),d=[u,c],f=[h-o,h-a],p=0,v=[r,i].map((function(e,t){return e.l===h?e.map((function(e){return e.s})):e.map((function(e,n){return p=n&&f[t]&&e.l>=d[t],f[t]-=p?1:0,p?e.ss:[e.s]})).flat()}));return v[0].length===v[1].length?v:Xt(v[0],v[1],h)}function jt(){return jt="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!{}.hasOwnProperty.call(e,t)&&null!==(e=d(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(arguments.length<3?e:n):i.value}},jt.apply(null,arguments)}function qt(e,t,n,r){var i=jt(d(e.prototype),t,n);return"function"==typeof i?function(e){return i.apply(n,e)}:i}function Kt(e,t,n,r){var i=e-n,o=t-r;return Math.sqrt(i*i+o*o)}function $t(e,t){var n=Math.min.apply(Math,ct([],ut(e),!1)),r=Math.min.apply(Math,ct([],ut(t),!1));return{x:n,y:r,width:Math.max.apply(Math,ct([],ut(e),!1))-n,height:Math.max.apply(Math,ct([],ut(t),!1))-r}}function Zt(e,t,n,r,i,o){return n*Math.cos(i)*Math.cos(o)-r*Math.sin(i)*Math.sin(o)+e}function Qt(e,t,n,r,i,o){return n*Math.sin(i)*Math.cos(o)+r*Math.cos(i)*Math.sin(o)+t}function Jt(e,t,n,r,i,o,a){for(var l=function(e,t,n){return Math.atan(-t/e*Math.tan(n))}(n,r,i),s=1/0,u=-1/0,c=[o,a],h=2*-Math.PI;h<=2*Math.PI;h+=Math.PI){var d=l+h;o<a?o<d&&d<a&&c.push(d):a<d&&d<o&&c.push(d)}for(h=0;h<c.length;h++){var f=Zt(e,0,n,r,i,c[h]);f<s&&(s=f),f>u&&(u=f)}var p=function(e,t,n){return Math.atan(t/(e*Math.tan(n)))}(n,r,i),v=1/0,g=-1/0,y=[o,a];for(h=2*-Math.PI;h<=2*Math.PI;h+=Math.PI){var m=p+h;o<a?o<m&&m<a&&y.push(m):a<m&&m<o&&y.push(m)}for(h=0;h<y.length;h++){var C=Qt(0,t,n,r,i,y[h]);C<v&&(v=C),C>g&&(g=C)}return{x:s,y:v,width:u-s,height:g-v}}var en=1e-4;function tn(e,t,n,r,i,o){var a=-1,l=1/0,s=[n,r],u=20;o&&o>200&&(u=o/10);for(var c=1/u,h=c/10,d=0;d<=u;d++){var f=d*c,p=[i.apply(void 0,ct([],ut(e.concat([f])),!1)),i.apply(void 0,ct([],ut(t.concat([f])),!1))];(m=Kt(s[0],s[1],p[0],p[1]))<l&&(a=f,l=m)}if(0===a)return{x:e[0],y:t[0]};if(1===a){var v=e.length;return{x:e[v-1],y:t[v-1]}}l=1/0;for(d=0;d<32&&!(h<en);d++){var g=a-h,y=a+h,m=(p=[i.apply(void 0,ct([],ut(e.concat([g])),!1)),i.apply(void 0,ct([],ut(t.concat([g])),!1))],Kt(s[0],s[1],p[0],p[1]));if(g>=0&&m<l)a=g,l=m;else{var C=[i.apply(void 0,ct([],ut(e.concat([y])),!1)),i.apply(void 0,ct([],ut(t.concat([y])),!1))],w=Kt(s[0],s[1],C[0],C[1]);y<=1&&w<l?(a=y,l=w):h*=.5}}return{x:i.apply(void 0,ct([],ut(e.concat([a])),!1)),y:i.apply(void 0,ct([],ut(t.concat([a])),!1))}}function nn(e,t,n,r){return Kt(e,t,n,r)}function rn(e,t,n,r,i){return{x:(1-i)*e+i*n,y:(1-i)*t+i*r}}function on(e,t,n,r,i,o){var a=[n-e,r-t];if(function(e,t){return e[0]===t[0]&&e[1]===t[1]}(a,[0,0]))return Math.sqrt((i-e)*(i-e)+(o-t)*(o-t));var l=[-a[1],a[0]];!function(e,t){var n=t[0],r=t[1],i=n*n+r*r;i>0&&(i=1/Math.sqrt(i)),e[0]=t[0]*i,e[1]=t[1]*i}(l,l);var s=[i-e,o-t];return Math.abs(function(e,t){return e[0]*t[0]+e[1]*t[1]}(s,l))}function an(e,t,n,r,i){var o=1-i;return o*o*o*e+3*t*i*o*o+3*n*i*i*o+r*i*i*i}function ln(e,t,n,r){var i,o,a,l=-3*e+9*t-9*n+3*r,s=6*e-12*t+6*n,u=3*t-3*e,c=[];if(Qe(l,0))Qe(s,0)||(i=-u/s)>=0&&i<=1&&c.push(i);else{var h=s*s-4*l*u;Qe(h,0)?c.push(-s/(2*l)):h>0&&(o=(-s-(a=Math.sqrt(h)))/(2*l),(i=(-s+a)/(2*l))>=0&&i<=1&&c.push(i),o>=0&&o<=1&&c.push(o))}return c}function sn(e,t,n,r,i,o,a,l){for(var s=[e,a],u=[t,l],c=ln(e,n,i,a),h=ln(t,r,o,l),d=0;d<c.length;d++)s.push(an(e,n,i,a,c[d]));for(d=0;d<h.length;d++)u.push(an(t,r,o,l,h[d]));return $t(s,u)}function un(e,t,n,r,i,o,a,l,s,u,c){var h=function(e,t,n,r,i,o,a,l,s,u,c){return tn([e,n,i,a],[t,r,o,l],s,u,an,c)}(e,t,n,r,i,o,a,l,s,u,c);return Kt(h.x,h.y,s,u)}function cn(e){return function(e){if(e.length<2)return 0;for(var t=0,n=0;n<e.length-1;n++){var r=e[n],i=e[n+1];t+=Kt(r[0],r[1],i[0],i[1])}return t}(e)}function hn(e,t,n,r){var i=1-r;return i*i*e+2*r*i*t+r*r*n}function dn(e,t,n){var r=e+n-2*t;if(Qe(r,0))return[.5];var i=(e-t)/r;return i<=1&&i>=0?[i]:[]}function fn(e,t,n,r,i,o){var a=dn(e,n,i)[0],l=dn(t,r,o)[0],s=[e,i],u=[t,o];return void 0!==a&&s.push(hn(e,n,i,a)),void 0!==l&&u.push(hn(t,r,o,l)),$t(s,u)}function pn(e,t,n,r,i,o,a,l){var s=function(e,t,n,r,i,o,a,l){return tn([e,n,i],[t,r,o],a,l,hn)}(e,t,n,r,i,o,a,l);return Kt(s.x,s.y,a,l)}function vn(){vn=function(){return n};var e,n={},r=Object.prototype,i=r.hasOwnProperty,o=Object.defineProperty||function(e,t,n){e[t]=n.value},a="function"==typeof Symbol?Symbol:{},l=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",u=a.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function h(e,t,n,r){var i=t&&t.prototype instanceof m?t:m,a=Object.create(i.prototype),l=new M(r||[]);return o(a,"_invoke",{value:R(e,n,l)}),a}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}n.wrap=h;var f="suspendedStart",p="suspendedYield",v="executing",g="completed",y={};function m(){}function C(){}function w(){}var E={};c(E,l,(function(){return this}));var x=Object.getPrototypeOf,S=x&&x(x(O([])));S&&S!==r&&i.call(S,l)&&(E=S);var T=w.prototype=m.prototype=Object.create(E);function b(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function L(e,n){function r(o,a,l,s){var u=d(e[o],e,a);if("throw"!==u.type){var c=u.arg,h=c.value;return h&&"object"==t(h)&&i.call(h,"__await")?n.resolve(h.__await).then((function(e){r("next",e,l,s)}),(function(e){r("throw",e,l,s)})):n.resolve(h).then((function(e){c.value=e,l(c)}),(function(e){return r("throw",e,l,s)}))}s(u.arg)}var a;o(this,"_invoke",{value:function(e,t){function i(){return new n((function(n,i){r(e,t,n,i)}))}return a=a?a.then(i,i):i()}})}function R(t,n,r){var i=f;return function(o,a){if(i===v)throw Error("Generator is already running");if(i===g){if("throw"===o)throw a;return{value:e,done:!0}}for(r.method=o,r.arg=a;;){var l=r.delegate;if(l){var s=_(l,r);if(s){if(s===y)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(i===f)throw i=g,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);i=v;var u=d(t,n,r);if("normal"===u.type){if(i=r.done?g:p,u.arg===y)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(i=g,r.method="throw",r.arg=u.arg)}}}function _(t,n){var r=n.method,i=t.iterator[r];if(i===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,_(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),y;var o=d(i,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,y;var a=o.arg;return a?a.done?(n[t.resultName]=a.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,y):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,y)}function N(e){var t={tryLoc:e[0]};