define(["exports","./Cartesian2-b4b7b0b3","./Check-5e798bbf","./when-208fe5b0","./Math-8386669c","./RuntimeError-7f634f5d"],function(e,R,o,T,F,B){"use strict";function t(e){this._ellipsoid=T.defaultValue(e,R.Ellipsoid.WGS84),this._semimajorAxis=this._ellipsoid.maximumRadius,this._oneOverSemimajorAxis=1/this._semimajorAxis}Object.defineProperties(t.prototype,{ellipsoid:{get:function(){return this._ellipsoid}}}),t.prototype.project=function(e,t){var n=this._semimajorAxis,r=e.longitude*n,n=e.latitude*n,e=e.height;return T.defined(t)?(t.x=r,t.y=n,t.z=e,t):new R.Cartesian3(r,n,e)},t.prototype.unproject=function(e,t){var n=this._oneOverSemimajorAxis,r=e.x*n,n=e.y*n,e=e.z;return T.defined(t)?(t.longitude=r,t.latitude=n,t.height=e,t):new R.Cartographic(r,n,e)};var a=Object.freeze({OUTSIDE:-1,INTERSECTING:0,INSIDE:1});function i(e,t){this.start=T.defaultValue(e,0),this.stop=T.defaultValue(t,0)}function L(e,t,n,r,a,i,s,o,u){this[0]=T.defaultValue(e,0),this[1]=T.defaultValue(r,0),this[2]=T.defaultValue(s,0),this[3]=T.defaultValue(t,0),this[4]=T.defaultValue(a,0),this[5]=T.defaultValue(o,0),this[6]=T.defaultValue(n,0),this[7]=T.defaultValue(i,0),this[8]=T.defaultValue(u,0)}L.packedLength=9,L.pack=function(e,t,n){return n=T.defaultValue(n,0),t[n++]=e[0],t[n++]=e[1],t[n++]=e[2],t[n++]=e[3],t[n++]=e[4],t[n++]=e[5],t[n++]=e[6],t[n++]=e[7],t[n++]=e[8],t},L.unpack=function(e,t,n){return t=T.defaultValue(t,0),(n=!T.defined(n)?new L:n)[0]=e[t++],n[1]=e[t++],n[2]=e[t++],n[3]=e[t++],n[4]=e[t++],n[5]=e[t++],n[6]=e[t++],n[7]=e[t++],n[8]=e[t++],n},L.clone=function(e,t){if(T.defined(e))return T.defined(t)?(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):new L(e[0],e[3],e[6],e[1],e[4],e[7],e[2],e[5],e[8])},L.fromArray=function(e,t,n){return t=T.defaultValue(t,0),(n=!T.defined(n)?new L:n)[0]=e[t],n[1]=e[t+1],n[2]=e[t+2],n[3]=e[t+3],n[4]=e[t+4],n[5]=e[t+5],n[6]=e[t+6],n[7]=e[t+7],n[8]=e[t+8],n},L.fromColumnMajorArray=function(e,t){return L.clone(e,t)},L.fromRowMajorArray=function(e,t){return T.defined(t)?(t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],t):new L(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8])},L.fromQuaternion=function(e,t){var n=e.x*e.x,r=e.x*e.y,a=e.x*e.z,i=e.x*e.w,s=e.y*e.y,o=e.y*e.z,u=e.y*e.w,l=e.z*e.z,d=e.z*e.w,c=e.w*e.w,f=n-s-l+c,h=2*(r-d),p=2*(a+u),e=2*(r+d),r=s-n-l+c,d=2*(o-i),u=2*(a-u),i=2*(o+i),c=-n-s+l+c;return T.defined(t)?(t[0]=f,t[1]=e,t[2]=u,t[3]=h,t[4]=r,t[5]=i,t[6]=p,t[7]=d,t[8]=c,t):new L(f,h,p,e,r,d,u,i,c)},L.fromHeadingPitchRoll=function(e,t){var n=Math.cos(-e.pitch),r=Math.cos(-e.heading),a=Math.cos(e.roll),i=Math.sin(-e.pitch),s=Math.sin(-e.heading),o=Math.sin(e.roll),u=n*r,l=-a*s+o*i*r,d=o*s+a*i*r,c=n*s,e=a*r+o*i*s,s=-o*r+a*i*s,i=-i,o=o*n,n=a*n;return T.defined(t)?(t[0]=u,t[1]=c,t[2]=i,t[3]=l,t[4]=e,t[5]=o,t[6]=d,t[7]=s,t[8]=n,t):new L(u,l,d,c,e,s,i,o,n)},L.fromScale=function(e,t){return T.defined(t)?(t[0]=e.x,t[1]=0,t[2]=0,t[3]=0,t[4]=e.y,t[5]=0,t[6]=0,t[7]=0,t[8]=e.z,t):new L(e.x,0,0,0,e.y,0,0,0,e.z)},L.fromUniformScale=function(e,t){return T.defined(t)?(t[0]=e,t[1]=0,t[2]=0,t[3]=0,t[4]=e,t[5]=0,t[6]=0,t[7]=0,t[8]=e,t):new L(e,0,0,0,e,0,0,0,e)},L.fromCrossProduct=function(e,t){return T.defined(t)?(t[0]=0,t[1]=e.z,t[2]=-e.y,t[3]=-e.z,t[4]=0,t[5]=e.x,t[6]=e.y,t[7]=-e.x,t[8]=0,t):new L(0,-e.z,e.y,e.z,0,-e.x,-e.y,e.x,0)},L.fromRotationX=function(e,t){var n=Math.cos(e),e=Math.sin(e);return T.defined(t)?(t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=n,t[5]=e,t[6]=0,t[7]=-e,t[8]=n,t):new L(1,0,0,0,n,-e,0,e,n)},L.fromRotationY=function(e,t){var n=Math.cos(e),e=Math.sin(e);return T.defined(t)?(t[0]=n,t[1]=0,t[2]=-e,t[3]=0,t[4]=1,t[5]=0,t[6]=e,t[7]=0,t[8]=n,t):new L(n,0,e,0,1,0,-e,0,n)},L.fromRotationZ=function(e,t){var n=Math.cos(e),e=Math.sin(e);return T.defined(t)?(t[0]=n,t[1]=e,t[2]=0,t[3]=-e,t[4]=n,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t):new L(n,-e,0,e,n,0,0,0,1)},L.toArray=function(e,t){return T.defined(t)?(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):[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8]]},L.getElementIndex=function(e,t){return 3*e+t},L.getColumn=function(e,t,n){var r=3*t,a=e[r],t=e[1+r],r=e[2+r];return n.x=a,n.y=t,n.z=r,n},L.setColumn=function(e,t,n,r){t*=3;return(r=L.clone(e,r))[t]=n.x,r[1+t]=n.y,r[2+t]=n.z,r},L.getRow=function(e,t,n){var r=e[t],a=e[t+3],t=e[t+6];return n.x=r,n.y=a,n.z=t,n},L.setRow=function(e,t,n,r){return(r=L.clone(e,r))[t]=n.x,r[t+3]=n.y,r[t+6]=n.z,r};var n=new R.Cartesian3;L.getScale=function(e,t){return t.x=R.Cartesian3.magnitude(R.Cartesian3.fromElements(e[0],e[1],e[2],n)),t.y=R.Cartesian3.magnitude(R.Cartesian3.fromElements(e[3],e[4],e[5],n)),t.z=R.Cartesian3.magnitude(R.Cartesian3.fromElements(e[6],e[7],e[8],n)),t};var r=new R.Cartesian3;L.getMaximumScale=function(e){return L.getScale(e,r),R.Cartesian3.maximumComponent(r)},L.multiply=function(e,t,n){var r=e[0]*t[0]+e[3]*t[1]+e[6]*t[2],a=e[1]*t[0]+e[4]*t[1]+e[7]*t[2],i=e[2]*t[0]+e[5]*t[1]+e[8]*t[2],s=e[0]*t[3]+e[3]*t[4]+e[6]*t[5],o=e[1]*t[3]+e[4]*t[4]+e[7]*t[5],u=e[2]*t[3]+e[5]*t[4]+e[8]*t[5],l=e[0]*t[6]+e[3]*t[7]+e[6]*t[8],d=e[1]*t[6]+e[4]*t[7]+e[7]*t[8],t=e[2]*t[6]+e[5]*t[7]+e[8]*t[8];return n[0]=r,n[1]=a,n[2]=i,n[3]=s,n[4]=o,n[5]=u,n[6]=l,n[7]=d,n[8]=t,n},L.add=function(e,t,n){return n[0]=e[0]+t[0],n[1]=e[1]+t[1],n[2]=e[2]+t[2],n[3]=e[3]+t[3],n[4]=e[4]+t[4],n[5]=e[5]+t[5],n[6]=e[6]+t[6],n[7]=e[7]+t[7],n[8]=e[8]+t[8],n},L.subtract=function(e,t,n){return n[0]=e[0]-t[0],n[1]=e[1]-t[1],n[2]=e[2]-t[2],n[3]=e[3]-t[3],n[4]=e[4]-t[4],n[5]=e[5]-t[5],n[6]=e[6]-t[6],n[7]=e[7]-t[7],n[8]=e[8]-t[8],n},L.multiplyByVector=function(e,t,n){var r=t.x,a=t.y,i=t.z,s=e[0]*r+e[3]*a+e[6]*i,t=e[1]*r+e[4]*a+e[7]*i,i=e[2]*r+e[5]*a+e[8]*i;return n.x=s,n.y=t,n.z=i,n},L.multiplyByScalar=function(e,t,n){return n[0]=e[0]*t,n[1]=e[1]*t,n[2]=e[2]*t,n[3]=e[3]*t,n[4]=e[4]*t,n[5]=e[5]*t,n[6]=e[6]*t,n[7]=e[7]*t,n[8]=e[8]*t,n},L.multiplyByScale=function(e,t,n){return n[0]=e[0]*t.x,n[1]=e[1]*t.x,n[2]=e[2]*t.x,n[3]=e[3]*t.y,n[4]=e[4]*t.y,n[5]=e[5]*t.y,n[6]=e[6]*t.z,n[7]=e[7]*t.z,n[8]=e[8]*t.z,n},L.negate=function(e,t){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},L.transpose=function(e,t){var n=e[0],r=e[3],a=e[6],i=e[1],s=e[4],o=e[7],u=e[2],l=e[5],e=e[8];return t[0]=n,t[1]=r,t[2]=a,t[3]=i,t[4]=s,t[5]=o,t[6]=u,t[7]=l,t[8]=e,t};var s=new R.Cartesian3(1,1,1);L.getRotation=function(e,t){var n=R.Cartesian3.divideComponents(s,L.getScale(e,r),r);return t=L.multiplyByScale(e,n,t)};var c=[1,0,0],f=[2,2,1];var u=new L,l=new L;L.computeEigenDecomposition=function(e,t){for(var n=F.CesiumMath.EPSILON20,r=0,a=0,i=(t=!T.defined(t)?{}:t).unitary=L.clone(L.IDENTITY,t.unitary),s=t.diagonal=L.clone(e,t.diagonal),o=n*function(e){for(var t=0,n=0;n<9;++n){var r=e[n];t+=r*r}return Math.sqrt(t)}(s);a<10&&function(e){for(var t=0,n=0;n<3;++n){var r=e[L.getElementIndex(f[n],c[n])];t+=2*r*r}return Math.sqrt(t)}(s)>o;)!function(e,t){for(var n=F.CesiumMath.EPSILON15,r=0,a=1,i=0;i<3;++i){var s=Math.abs(e[L.getElementIndex(f[i],c[i])]);rn&&(u=(n=(n=(e[L.getElementIndex(d,d)]-e[L.getElementIndex(l,l)])/2/e[L.getElementIndex(d,l)])<0?-1/(-n+Math.sqrt(1+n*n)):1/(n+Math.sqrt(1+n*n)))*(o=1/Math.sqrt(1+n*n))),(t=L.clone(L.IDENTITY,t))[L.getElementIndex(l,l)]=t[L.getElementIndex(d,d)]=o,t[L.getElementIndex(d,l)]=u,t[L.getElementIndex(l,d)]=-u}(s,u),L.transpose(u,l),L.multiply(s,u,s),L.multiply(l,s,s),L.multiply(i,u,i),2<++r&&(++a,r=0);return t},L.abs=function(e,t){return t[0]=Math.abs(e[0]),t[1]=Math.abs(e[1]),t[2]=Math.abs(e[2]),t[3]=Math.abs(e[3]),t[4]=Math.abs(e[4]),t[5]=Math.abs(e[5]),t[6]=Math.abs(e[6]),t[7]=Math.abs(e[7]),t[8]=Math.abs(e[8]),t},L.determinant=function(e){var t=e[0],n=e[3],r=e[6],a=e[1],i=e[4],s=e[7],o=e[2],u=e[5],e=e[8];return t*(i*e-u*s)+a*(u*r-n*e)+o*(n*s-i*r)},L.inverse=function(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],s=e[4],o=e[5],u=e[6],l=e[7],d=e[8],e=L.determinant(e);return t[0]=s*d-l*o,t[1]=l*a-r*d,t[2]=r*o-s*a,t[3]=u*o-i*d,t[4]=n*d-u*a,t[5]=i*a-n*o,t[6]=i*l-u*s,t[7]=u*r-n*l,t[8]=n*s-i*r,L.multiplyByScalar(t,1/e,t)};var d=new L;function W(e,t,n,r){this.x=T.defaultValue(e,0),this.y=T.defaultValue(t,0),this.z=T.defaultValue(n,0),this.w=T.defaultValue(r,0)}L.inverseTranspose=function(e,t){return L.inverse(L.transpose(e,d),t)},L.equals=function(e,t){return e===t||T.defined(e)&&T.defined(t)&&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]},L.equalsEpsilon=function(e,t,n){return n=T.defaultValue(n,0),e===t||T.defined(e)&&T.defined(t)&&Math.abs(e[0]-t[0])<=n&&Math.abs(e[1]-t[1])<=n&&Math.abs(e[2]-t[2])<=n&&Math.abs(e[3]-t[3])<=n&&Math.abs(e[4]-t[4])<=n&&Math.abs(e[5]-t[5])<=n&&Math.abs(e[6]-t[6])<=n&&Math.abs(e[7]-t[7])<=n&&Math.abs(e[8]-t[8])<=n},L.IDENTITY=Object.freeze(new L(1,0,0,0,1,0,0,0,1)),L.ZERO=Object.freeze(new L(0,0,0,0,0,0,0,0,0)),L.COLUMN0ROW0=0,L.COLUMN0ROW1=1,L.COLUMN0ROW2=2,L.COLUMN1ROW0=3,L.COLUMN1ROW1=4,L.COLUMN1ROW2=5,L.COLUMN2ROW0=6,L.COLUMN2ROW1=7,L.COLUMN2ROW2=8,Object.defineProperties(L.prototype,{length:{get:function(){return L.packedLength}}}),L.prototype.clone=function(e){return L.clone(this,e)},L.prototype.equals=function(e){return L.equals(this,e)},L.equalsArray=function(e,t,n){return e[0]===t[n]&&e[1]===t[n+1]&&e[2]===t[n+2]&&e[3]===t[n+3]&&e[4]===t[n+4]&&e[5]===t[n+5]&&e[6]===t[n+6]&&e[7]===t[n+7]&&e[8]===t[n+8]},L.prototype.equalsEpsilon=function(e,t){return L.equalsEpsilon(this,e,t)},L.prototype.toString=function(){return"("+this[0]+", "+this[3]+", "+this[6]+")\n("+this[1]+", "+this[4]+", "+this[7]+")\n("+this[2]+", "+this[5]+", "+this[8]+")"},W.fromElements=function(e,t,n,r,a){return T.defined(a)?(a.x=e,a.y=t,a.z=n,a.w=r,a):new W(e,t,n,r)},W.fromColor=function(e,t){return T.defined(t)?(t.x=e.red,t.y=e.green,t.z=e.blue,t.w=e.alpha,t):new W(e.red,e.green,e.blue,e.alpha)},W.clone=function(e,t){if(T.defined(e))return T.defined(t)?(t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t):new W(e.x,e.y,e.z,e.w)},W.packedLength=4,W.pack=function(e,t,n){return n=T.defaultValue(n,0),t[n++]=e.x,t[n++]=e.y,t[n++]=e.z,t[n]=e.w,t},W.unpack=function(e,t,n){return t=T.defaultValue(t,0),(n=!T.defined(n)?new W:n).x=e[t++],n.y=e[t++],n.z=e[t++],n.w=e[t],n},W.packArray=function(e,t){var n=e.length,r=4*n;if(T.defined(t)){if(!Array.isArray(t)&&t.length!==r)throw new o.DeveloperError("If result is a typed array, it must have exactly array.length * 4 elements");t.length!==r&&(t.length=r)}else t=new Array(r);for(var a=0;as.x&&R.Cartesian3.clone(n,s),fo.y&&R.Cartesian3.clone(n,o),hu.z&&R.Cartesian3.clone(n,u)}var p=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(s,r,X)),m=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(o,a,X)),y=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(u,i,X)),w=r,C=s,v=p;pu.x&&R.Cartesian3.clone(a,u),pl.y&&R.Cartesian3.clone(a,l),md.z&&R.Cartesian3.clone(a,d)}var y=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(u,i,X)),w=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(l,s,X)),C=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(d,o,X)),v=i,g=u,x=y;yo.x&&R.Cartesian3.clone(r,o),hu.y&&R.Cartesian3.clone(r,u),pl.z&&R.Cartesian3.clone(r,l)}var m=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(o,a,X)),y=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(u,i,X)),w=R.Cartesian3.magnitudeSquared(R.Cartesian3.subtract(l,s,X)),C=a,v=o,g=m;mn.radius&&(n.radius=t),n},q.intersectPlane=function(e,t){var n=e.center,r=e.radius,e=t.normal,t=R.Cartesian3.dot(e,n)+t.distance;return t<-r?a.OUTSIDE:t=t?"":Array(1+t-e.length>>>0).join(n),r?e+n:n+e}function g(e,t,n,r,a,i){var s=r-e.length;return e=0>>0;return e=(n=n&&o&&{2:"0b",8:"0",16:"0x"}[t]||"")+v(o.toString(t),i||0,"0",!1),g(e,n,r,a,s)}function E(e,t,n,r,a,i){return null!=r&&(e=e.slice(0,r)),g(e,"",t,n,a,i)}var O=arguments,_=0,e=O[_++];return e.replace(/%%|%(\d+\$)?([-+\'#0 ]*)(\*\d+\$|\*|\d+)?(\.(\*\d+\$|\*|\d+))?([scboxXuideEfFgG])/g,function(e,t,n,r,a,i,s){var o,u,l,d,c;if("%%"==e)return"%";for(var f=!1,h="",p=!1,m=!1,y=" ",w=n.length,C=0;n&&C=t.length?t.length-1:n].offset;0=n.length)return Kt.addSeconds(e,-n[r-1].offset,t);var a=Kt.secondsDifference(n[r].julianDate,e);return 0===a?Kt.addSeconds(e,-n[r].offset,t):a<=1?void 0:Kt.addSeconds(e,-n[--r].offset,t)}function Wt(e,t,n){var r=t/Ut.SECONDS_PER_DAY|0;return e+=r,(t-=Ut.SECONDS_PER_DAY*r)<0&&(e--,t+=Ut.SECONDS_PER_DAY),n.dayNumber=e,n.secondsOfDay=t,n}function jt(e,t,n,r,a,i,s){var o=(t-14)/12|0,e=e+4800+o,n=(1461*e/4|0)+(367*(t-2-12*o)/12|0)-(3*((e+100)/100|0)/4|0)+n-32075;(r-=12)<0&&(r+=24);s=i+(r*Ut.SECONDS_PER_HOUR+a*Ut.SECONDS_PER_MINUTE+s*Ut.SECONDS_PER_MILLISECOND);return 43200<=s&&--n,[n,s]}var kt=/^(\d{4})$/,Yt=/^(\d{4})-(\d{2})$/,Ht=/^(\d{4})-?(\d{3})$/,Zt=/^(\d{4})-?W(\d{2})-?(\d{1})?$/,Xt=/^(\d{4})-?(\d{2})-?(\d{2})$/,C=/([Z+\-])?(\d{2})?:?(\d{2})?$/,Jt=/^(\d{2})(\.\d+)?/.source+C.source,Gt=/^(\d{2}):?(\d{2})(\.\d+)?/.source+C.source,Qt=/^(\d{2}):?(\d{2}):?(\d{2})(\.\d+)?/.source+C.source;function Kt(e,t,n){this.dayNumber=void 0,this.secondsOfDay=void 0,e=T.defaultValue(e,0),t=T.defaultValue(t,0),n=T.defaultValue(n,Pt.UTC);var r=0|e;Wt(r,t+=(e-r)*Ut.SECONDS_PER_DAY,this),n===Pt.UTC&&Bt(this)}Kt.fromGregorianDate=function(e,t){e=jt(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond);return T.defined(t)?(Wt(e[0],e[1],t),Bt(t),t):new Kt(e[0],e[1],Pt.UTC)},Kt.fromDate=function(e,t){e=jt(e.getUTCFullYear(),e.getUTCMonth()+1,e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds());return T.defined(t)?(Wt(e[0],e[1],t),Bt(t),t):new Kt(e[0],e[1],Pt.UTC)},Kt.fromIso8601=function(e,t){var n,r,a,i,s,o=(e=e.replace(",",".")).split("T"),u=1,l=1,d=0,c=0,f=0,h=0,p=o[0],e=o[1];if(null!==(o=p.match(Xt))?(a=+o[1],u=+o[2],l=+o[3]):null!==(o=p.match(Yt))?(a=+o[1],u=+o[2]):null!==(o=p.match(kt))?a=+o[1]:(null!==(o=p.match(Ht))?(a=+o[1],i=+o[2],r=zt(a)):null!==(o=p.match(Zt))&&(a=+o[1],i=7*+o[2]+(+o[3]||0)-new Date(Date.UTC(a,0,4)).getUTCDay()-3),(n=new Date(Date.UTC(a,0,1))).setUTCDate(i),u=n.getUTCMonth()+1,l=n.getUTCDate()),r=zt(a),T.defined(e)){null!==(o=e.match(Qt))?(d=+o[1],c=+o[2],f=+o[3],h=1e3*+(o[4]||0),s=5):null!==(o=e.match(Gt))?(d=+o[1],c=+o[2],f=60*+(o[3]||0),s=4):null!==(o=e.match(Jt))&&(d=+o[1],c=60*+(o[2]||0),s=3);var m=o[s],y=+o[s+1],w=+(o[s+2]||0);switch(m){case"+":d-=y,c-=w;break;case"-":d+=y,c+=w;break;case"Z":break;default:c+=new Date(Date.UTC(a,u-1,l,d,c)).getTimezoneOffset()}}m=60===f;for(m&&f--;60<=c;)c-=60,d++;for(;24<=d;)d-=24,l++;for(n=r&&2===u?29:Nt[u-1];na&&(t=n[a],this._length=a),t},En.prototype.pop=function(e){if(e=T.defaultValue(e,0),0!==this._length){var t=this._array,n=t[e];return On(t,e,--this._length),this.heapify(e),t[this._length]=void 0,n}};var _n={numberOfAttemptedRequests:0,numberOfActiveRequests:0,numberOfCancelledRequests:0,numberOfCancelledActiveRequests:0,numberOfFailedRequests:0,numberOfActiveRequestsEver:0,lastNumberOfActiveRequests:0},Sn=20,bn=new En({comparator:function(e,t){return e.priority-t.priority}});bn.maximumLength=Sn,bn.reserve(Sn);var An=[],Mn={},Rn="undefined"!=typeof document?new en(document.location.href):new en,Tn=new gn;function qn(){}function zn(e){T.defined(e.priorityFunction)&&(e.priority=e.priorityFunction())}function In(e){return e.state===yn.UNISSUED&&(e.state=yn.ISSUED,e.deferred=T.when.defer()),e.deferred.promise}function Un(e){var t,n,r=In(e);return e.state=yn.ACTIVE,An.push(e),++_n.numberOfActiveRequests,++_n.numberOfActiveRequestsEver,++Mn[e.serverKey],e.requestFunction().then((n=e,function(e){var t;n.state!==yn.CANCELLED&&(t=n.deferred,--_n.numberOfActiveRequests,--Mn[n.serverKey],Tn.raiseEvent(),n.state=yn.RECEIVED,n.deferred=void 0,t.resolve(e))})).otherwise((t=e,function(e){t.state!==yn.CANCELLED&&(++_n.numberOfFailedRequests,--_n.numberOfActiveRequests,--Mn[t.serverKey],Tn.raiseEvent(e),t.state=yn.FAILED,t.deferred.reject(e))})),r}function Pn(e){var t,n=e.state===yn.ACTIVE;e.state=yn.CANCELLED,++_n.numberOfCancelledRequests,T.defined(e.deferred)&&(t=e.deferred,e.deferred=void 0,t.reject()),n&&(--_n.numberOfActiveRequests,--Mn[e.serverKey],++_n.numberOfCancelledActiveRequests),T.defined(e.cancelFunction)&&e.cancelFunction()}qn.maximumRequests=50,qn.maximumRequestsPerServer=6,qn.requestsByServer={"api.cesium.com:443":18,"assets.cesium.com:443":18},qn.throttleRequests=!0,qn.debugShowStatistics=!1,qn.requestCompletedEvent=Tn,Object.defineProperties(qn,{statistics:{get:function(){return _n}},priorityHeapLength:{get:function(){return Sn},set:function(e){if(ee;)Pn(bn.pop());Sn=e,bn.maximumLength=e,bn.reserve(e)}}}),qn.serverHasOpenSlots=function(e,t){t=T.defaultValue(t,1);var n=T.defaultValue(qn.requestsByServer[e],qn.maximumRequestsPerServer);return Mn[e]+t<=n},qn.heapHasOpenSlots=function(e){return bn.length+e<=Sn},qn.update=function(){for(var e,t=0,n=An.length,r=0;r=qn.maximumRequests)){zn(e);var t=bn.insert(e);if(T.defined(t)){if(t===e)return;Pn(t)}return In(e)}}},qn.clearForSpecs=function(){for(;0=this.retryAttempts)return T.when(!1);var n=this;return T.when(t(this,e)).then(function(e){return++n._retryCount,e})},Yn.prototype.clone=function(e){return(e=!T.defined(e)?new Yn({url:this._url}):e)._url=this._url,e._queryParameters=un(this._queryParameters),e._templateValues=un(this._templateValues),e.headers=un(this.headers),e.proxy=this.proxy,e.retryCallback=this.retryCallback,e.retryAttempts=this.retryAttempts,e._retryCount=0,e.request=this.request.clone(),e},Yn.prototype.getBaseUri=function(e){return t=this.getUrlComponent(e),n=e,r="",-1!==(e=t.lastIndexOf("/"))&&(r=t.substring(0,e+1)),n&&(t=new en(t),T.defined(t.query)&&(r+="?"+t.query),T.defined(t.fragment)&&(r+="#"+t.fragment)),r;var t,n,r},Yn.prototype.appendForwardSlash=function(){var e;this._url=(0!==(e=this._url).length&&"/"===e[e.length-1]||(e+="/"),e)},Yn.prototype.fetchArrayBuffer=function(){return this.fetch({responseType:"arraybuffer"})},Yn.fetchArrayBuffer=function(e){return new Yn(e).fetchArrayBuffer()},Yn.prototype.fetchBlob=function(){return this.fetch({responseType:"blob"})},Yn.fetchBlob=function(e){return new Yn(e).fetchBlob()},Yn.prototype.fetchImage=function(e){e=T.defaultValue(e,T.defaultValue.EMPTY_OBJECT);var t=T.defaultValue(e.preferImageBitmap,!1),n=T.defaultValue(e.preferBlob,!1),r=T.defaultValue(e.flipY,!1);if(jn(this.request),!Fn||this.isDataUri||this.isBlobUri||!this.hasHeaders&&!n)return Hn({resource:this,flipY:r,preferImageBitmap:t});var a,i,s,o=this.fetchBlob();return T.defined(o)?Yn.supportsImageBitmapOptions().then(function(e){return a=e&&t,o}).then(function(e){if(T.defined(e)){if(s=e,a)return Yn.createImageBitmapFromBlob(e,{flipY:r,premultiplyAlpha:!1});e=window.URL.createObjectURL(e);return Hn({resource:i=new Yn({url:e}),flipY:r,preferImageBitmap:!1})}}).then(function(e){if(T.defined(e))return e.blob=s,a||window.URL.revokeObjectURL(i.url),e}).otherwise(function(e){return T.defined(i)&&window.URL.revokeObjectURL(i.url),e.blob=s,T.when.reject(e)}):void 0},Yn.fetchImage=function(e){return new Yn(e).fetchImage({flipY:e.flipY,preferBlob:e.preferBlob,preferImageBitmap:e.preferImageBitmap})},Yn.prototype.fetchText=function(){return this.fetch({responseType:"text"})},Yn.fetchText=function(e){return new Yn(e).fetchText()},Yn.prototype.fetchJson=function(){var e=this.fetch({responseType:"text",headers:{Accept:"application/json,*/*;q=0.01"}});if(T.defined(e))return e.then(function(e){if(T.defined(e))return JSON.parse(e)})},Yn.fetchJson=function(e){return new Yn(e).fetchJson()},Yn.prototype.fetchXML=function(){return this.fetch({responseType:"document",overrideMimeType:"text/xml"})},Yn.fetchXML=function(e){return new Yn(e).fetchXML()},Yn.prototype.fetchJsonp=function(e){var t;for(e=T.defaultValue(e,"callback"),jn(this.request);t="loadJsonp"+Math.random().toString().substring(2,8),T.defined(window[t]););return function n(r,a,i){var e={};e[a]=i;r.setQueryParameters(e);var s=r.request;s.url=r.url;s.requestFunction=function(){var t=T.when.defer();return window[i]=function(e){t.resolve(e);try{delete window[i]}catch(e){window[i]=void 0}},Yn._Implementations.loadAndExecuteScript(r.url,i,t),t.promise};e=qn.request(s);if(!T.defined(e))return;return e.otherwise(function(t){return s.state!==yn.FAILED?T.when.reject(t):r.retryOnError(t).then(function(e){return e?(s.state=yn.UNISSUED,s.deferred=void 0,n(r,a,i)):T.when.reject(t)})})}(this,e,t)},Yn.fetchJsonp=function(e){return new Yn(e).fetchJsonp(e.callbackParameterName)},Yn.prototype._makeRequest=function(o){var u=this;jn(u.request);var l=u.request;l.url=u.url,l.requestFunction=function(){var e=o.responseType,t=ln(o.headers,u.headers),n=o.overrideMimeType,r=o.method,a=o.data,i=T.when.defer(),s=Yn._Implementations.loadWithXhr(u.url,e,r,a,t,i,n);return T.defined(s)&&T.defined(s.abort)&&(l.cancelFunction=function(){s.abort()}),i.promise};var e=qn.request(l);if(T.defined(e))return e.then(function(e){return l.cancelFunction=void 0,e}).otherwise(function(t){return l.cancelFunction=void 0,l.state!==yn.FAILED?T.when.reject(t):u.retryOnError(t).then(function(e){return e?(l.state=yn.UNISSUED,l.deferred=void 0,u.fetch(o)):T.when.reject(t)})})};var Zn=/^data:(.*?)(;base64)?,(.*)$/;function Xn(e,t){t=decodeURIComponent(t);return e?atob(t):t}function Jn(e,t){for(var n=Xn(e,t),t=new ArrayBuffer(n.length),r=new Uint8Array(t),a=0;at.length-1)return s.xPoleWander=0,s.yPoleWander=0,s.xPoleOffset=0,s.yPoleOffset=0,s.ut1MinusUtc=0,s;var u=t[a],l=t[i];if(u.equals(l)||r.equals(u))return tr(e,n,a,o,s),s;if(r.equals(l))return tr(e,n,i,o,s),s;var d=Kt.secondsDifference(r,u)/Kt.secondsDifference(l,u),c=a*o,t=i*o,u=n[c+e._ut1MinusUtcSecondsColumn],a=n[t+e._ut1MinusUtcSecondsColumn],i=a-u;return!(.5=this._totalSamples&&(r=this._totalSamples-1);for(var t=(t=t<0?0:t)/this._samplesPerXysFile|0,a=r/this._samplesPerXysFile|0,i=[],s=t;s<=a;++s)i.push(Cr(this,s));return T.when.all(i)},mr.prototype.computeXysRadians=function(e,t,n){var r=wr(this,e,t);if(!(r<0)){e=r/this._stepSizeDays|0;if(!(e>=this._totalSamples)){var a=this._interpolationOrder,i=e-(a/2|0),t=(i=i<0?0:i)+a;t>=this._totalSamples&&(i=(t=this._totalSamples-1)-a)<0&&(i=0);var e=!1,s=this._samples;if(T.defined(s[3*i])||(Cr(this,i/this._samplesPerXysFile|0),e=!0),T.defined(s[3*t])||(Cr(this,t/this._samplesPerXysFile|0),e=!0),!e){T.defined(n)?(n.x=0,n.y=0,n.s=0):n=new pr(0,0,0);for(var o,u=r-i*this._stepSizeDays,l=this._work,d=this._denominators,c=this._coef,f=this._xTable,h=0;h<=a;++h)l[h]=u-f[h];for(h=0;h<=a;++h){for(c[h]=1,o=0;o<=a;++o)o!==h&&(c[h]*=l[o]);c[h]*=d[h];var p=3*(i+h);n.x+=c[h]*s[p++],n.y+=c[h]*s[p++],n.s+=c[h]*s[p]}return n}}}};var vr={},gr={up:{south:"east",north:"west",west:"south",east:"north"},down:{south:"west",north:"east",west:"north",east:"south"},south:{up:"west",down:"east",west:"down",east:"up"},north:{up:"east",down:"west",west:"up",east:"down"},west:{up:"north",down:"south",north:"down",south:"up"},east:{up:"south",down:"north",north:"up",south:"down"}},xr={north:[-1,0,0],east:[0,1,0],up:[0,0,1],south:[1,0,0],west:[0,-1,0],down:[0,0,-1]},Er={},Or={east:new R.Cartesian3,north:new R.Cartesian3,up:new R.Cartesian3,west:new R.Cartesian3,south:new R.Cartesian3,down:new R.Cartesian3},_r=new R.Cartesian3,Sr=new R.Cartesian3,br=new R.Cartesian3;vr.localFrameToFixedFrameGenerator=function(a,i){if(!gr.hasOwnProperty(a)||!gr[a].hasOwnProperty(i))throw new o.DeveloperError("firstAxis and secondAxis must be east, north, up, west, south or down.");var e,s=gr[a][i],t=a+i;return T.defined(Er[t])?e=Er[t]:Er[t]=e=function(e,t,n){var r;return T.defined(n)||(n=new j),R.Cartesian3.equalsEpsilon(e,R.Cartesian3.ZERO,F.CesiumMath.EPSILON14)?(R.Cartesian3.unpack(xr[a],0,_r),R.Cartesian3.unpack(xr[i],0,Sr),R.Cartesian3.unpack(xr[s],0,br)):F.CesiumMath.equalsEpsilon(e.x,0,F.CesiumMath.EPSILON14)&&F.CesiumMath.equalsEpsilon(e.y,0,F.CesiumMath.EPSILON14)?(r=F.CesiumMath.sign(e.z),R.Cartesian3.unpack(xr[a],0,_r),"east"!==a&&"west"!==a&&R.Cartesian3.multiplyByScalar(_r,r,_r),R.Cartesian3.unpack(xr[i],0,Sr),"east"!==i&&"west"!==i&&R.Cartesian3.multiplyByScalar(Sr,r,Sr),R.Cartesian3.unpack(xr[s],0,br),"east"!==s&&"west"!==s&&R.Cartesian3.multiplyByScalar(br,r,br)):((t=T.defaultValue(t,R.Ellipsoid.WGS84)).geodeticSurfaceNormal(e,Or.up),r=Or.up,(t=Or.east).x=-e.y,t.y=e.x,t.z=0,R.Cartesian3.normalize(t,Or.east),R.Cartesian3.cross(r,t,Or.north),R.Cartesian3.multiplyByScalar(Or.up,-1,Or.down),R.Cartesian3.multiplyByScalar(Or.east,-1,Or.west),R.Cartesian3.multiplyByScalar(Or.north,-1,Or.south),_r=Or[a],Sr=Or[i],br=Or[s]),n[0]=_r.x,n[1]=_r.y,n[2]=_r.z,n[3]=0,n[4]=Sr.x,n[5]=Sr.y,n[6]=Sr.z,n[7]=0,n[8]=br.x,n[9]=br.y,n[10]=br.z,n[11]=0,n[12]=e.x,n[13]=e.y,n[14]=e.z,n[15]=1,n},e},vr.eastNorthUpToFixedFrame=vr.localFrameToFixedFrameGenerator("east","north"),vr.northEastDownToFixedFrame=vr.localFrameToFixedFrameGenerator("north","east"),vr.northUpEastToFixedFrame=vr.localFrameToFixedFrameGenerator("north","up"),vr.northWestUpToFixedFrame=vr.localFrameToFixedFrameGenerator("north","west");var Ar=new $e,Mr=new R.Cartesian3(1,1,1),Rr=new j;vr.headingPitchRollToFixedFrame=function(e,t,n,r,a){r=T.defaultValue(r,vr.eastNorthUpToFixedFrame);t=$e.fromHeadingPitchRoll(t,Ar),t=j.fromTranslationQuaternionRotationScale(R.Cartesian3.ZERO,t,Mr,Rr);return a=r(e,n,a),j.multiply(a,t,a)};var Tr=new j,qr=new L;vr.headingPitchRollQuaternion=function(e,t,n,r,a){r=vr.headingPitchRollToFixedFrame(e,t,n,r,Tr),r=j.getMatrix3(r,qr);return $e.fromRotationMatrix(r,a)};var zr=new R.Cartesian3(1,1,1),Ir=new R.Cartesian3,Ur=new j,Pr=new j,Dr=new L,Nr=new $e;vr.fixedFrameToHeadingPitchRoll=function(e,t,n,r){t=T.defaultValue(t,R.Ellipsoid.WGS84),n=T.defaultValue(n,vr.eastNorthUpToFixedFrame),T.defined(r)||(r=new ar);var a=j.getTranslation(e,Ir);if(R.Cartesian3.equals(a,R.Cartesian3.ZERO))return r.heading=0,r.pitch=0,r.roll=0,r;t=j.inverseTransformation(n(a,t,Ur),Ur),e=j.setScale(e,zr,Pr),e=j.setTranslation(e,R.Cartesian3.ZERO,e),t=j.multiply(t,e,t),t=$e.fromRotationMatrix(j.getMatrix3(t,Dr),Nr),t=$e.normalize(t,t);return ar.fromQuaternion(t,r)};var Vr=F.CesiumMath.TWO_PI/86400,Fr=new Kt;vr.computeTemeToPseudoFixedMatrix=function(e,t){var n=(Fr=Kt.addSeconds(e,-Kt.computeTaiMinusUtc(e),Fr)).dayNumber,r=Fr.secondsOfDay,e=n-2451545,e=43200<=r?(.5+e)/Ut.DAYS_PER_JULIAN_CENTURY:(e-.5)/Ut.DAYS_PER_JULIAN_CENTURY,n=(24110.54841+e*(8640184.812866+e*(.093104+-62e-7*e)))*Vr%F.CesiumMath.TWO_PI+(72921158553e-15+11772758384668e-32*(n-2451545.5))*((r+.5*Ut.SECONDS_PER_DAY)%Ut.SECONDS_PER_DAY),r=Math.cos(n),n=Math.sin(n);return T.defined(t)?(t[0]=r,t[1]=-n,t[2]=0,t[3]=n,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t):new L(r,n,0,-n,r,0,0,0,1)},vr.iau2006XysData=new mr,vr.earthOrientationParameters=Kn.NONE;var Br=32.184;vr.preloadIcrfFixed=function(e){var t=e.start.dayNumber,n=e.start.secondsOfDay+Br,r=e.stop.dayNumber,e=e.stop.secondsOfDay+Br,r=vr.iau2006XysData.preload(t,n,r,e),e=vr.earthOrientationParameters.getPromiseToLoad();return T.when.all([r,e])},vr.computeIcrfToFixedMatrix=function(e,t){T.defined(t)||(t=new L);e=vr.computeFixedToIcrfMatrix(e,t);if(T.defined(e))return L.transpose(e,t)};var Lr=new pr(0,0,0),Wr=new Rt(0,0,0,0,0),jr=new L,kr=new L;vr.computeFixedToIcrfMatrix=function(e,t){T.defined(t)||(t=new L);var n=vr.earthOrientationParameters.compute(e,Wr);if(T.defined(n)){var r=e.dayNumber,a=e.secondsOfDay+Br,i=vr.iau2006XysData.computeXysRadians(r,a,Lr);if(T.defined(i)){var s=i.x+n.xPoleOffset,o=i.y+n.yPoleOffset,u=1/(1+Math.sqrt(1-s*s-o*o)),l=jr;l[0]=1-u*s*s,l[3]=-u*s*o,l[6]=s,l[1]=-u*s*o,l[4]=1-u*o*o,l[7]=o,l[2]=-s,l[5]=-o,l[8]=1-u*(s*s+o*o);s=L.fromRotationZ(-i.s,kr),o=L.multiply(l,s,jr),i=e.dayNumber,l=(e.secondsOfDay-Kt.computeTaiMinusUtc(e)+n.ut1MinusUtc)/Ut.SECONDS_PER_DAY,s=(s=.779057273264+l+.00273781191135448*(i-2451545+l))%1*F.CesiumMath.TWO_PI,e=L.fromRotationZ(s,kr),i=L.multiply(o,e,jr),l=Math.cos(n.xPoleWander),s=Math.cos(n.yPoleWander),o=Math.sin(n.xPoleWander),e=Math.sin(n.yPoleWander),n=r-2451545+a/Ut.SECONDS_PER_DAY,r=-47e-6*(n/=36525)*F.CesiumMath.RADIANS_PER_DEGREE/3600,a=Math.cos(r),n=Math.sin(r),r=kr;return r[0]=l*a,r[1]=l*n,r[2]=o,r[3]=-s*n+e*o*a,r[4]=s*a+e*o*n,r[5]=-e*l,r[6]=-e*n-s*o*a,r[7]=e*a-s*o*n,r[8]=s*l,L.multiply(i,r,t)}}};var Yr=new W;vr.pointToWindowCoordinates=function(e,t,n,r){return(r=vr.pointToGLWindowCoordinates(e,t,n,r)).y=2*t[5]-r.y,r},vr.pointToGLWindowCoordinates=function(e,t,n,r){T.defined(r)||(r=new R.Cartesian2);var a=Yr;return j.multiplyByVector(e,W.fromElements(n.x,n.y,n.z,1,a),a),W.multiplyByScalar(a,1/a.w,a),j.multiplyByVector(t,a,a),R.Cartesian2.fromCartesian4(a,r)};var Hr=new R.Cartesian3,Zr=new R.Cartesian3,Xr=new R.Cartesian3;vr.rotationMatrixFromPositionVelocity=function(e,t,n,r){n=T.defaultValue(n,R.Ellipsoid.WGS84).geodeticSurfaceNormal(e,Hr),e=R.Cartesian3.cross(t,n,Zr);R.Cartesian3.equalsEpsilon(e,R.Cartesian3.ZERO,F.CesiumMath.EPSILON6)&&(e=R.Cartesian3.clone(R.Cartesian3.UNIT_X,e));n=R.Cartesian3.cross(e,t,Xr);return R.Cartesian3.normalize(n,n),R.Cartesian3.cross(t,n,e),R.Cartesian3.negate(e,e),R.Cartesian3.normalize(e,e),(r=!T.defined(r)?new L:r)[0]=t.x,r[1]=t.y,r[2]=t.z,r[3]=e.x,r[4]=e.y,r[5]=e.z,r[6]=n.x,r[7]=n.y,r[8]=n.z,r};var Jr=new j(0,0,1,0,1,0,0,0,0,1,0,0,0,0,0,1),Gr=new R.Cartographic,Qr=new R.Cartesian3,Kr=new R.Cartesian3,$r=new L,ea=new j,ta=new j;vr.basisTo2D=function(e,t,n){var r=j.getTranslation(t,Kr),a=e.ellipsoid,i=a.cartesianToCartographic(r,Gr),i=e.project(i,Qr);R.Cartesian3.fromElements(i.z,i.x,i.y,i);a=vr.eastNorthUpToFixedFrame(r,a,ea),a=j.inverseTransformation(a,ta),t=j.getMatrix3(t,$r),t=j.multiplyByMatrix3(a,t,n);return j.multiply(Jr,t,n),j.setTranslation(n,i,n),n},vr.wgs84To2DModelMatrix=function(e,t,n){var r=e.ellipsoid,a=vr.eastNorthUpToFixedFrame(t,r,ea),a=j.inverseTransformation(a,ta),t=r.cartesianToCartographic(t,Gr),t=e.project(t,Qr);R.Cartesian3.fromElements(t.z,t.x,t.y,t);t=j.fromTranslation(t,ea);return j.multiply(Jr,a,n),j.multiply(t,n,n),n},e.BoundingSphere=q,e.Cartesian4=W,e.FeatureDetection=Ke,e.GeographicProjection=t,e.Intersect=a,e.Interval=i,e.Matrix3=L,e.Matrix4=j,e.Quaternion=$e,e.Resource=Yn,e.Transforms=vr,e.buildModuleUrl=hr});