define(["exports","./Matrix2-fc7e9822","./RuntimeError-c581ca93","./defaultValue-94c3e563"],(function(e,n,t,i){"use strict";function o(){this.high=n.Cartesian3.clone(n.Cartesian3.ZERO),this.low=n.Cartesian3.clone(n.Cartesian3.ZERO)}o.encode=function(e,n){let o;return t.Check.typeOf.number("value",e),i.defined(n)||(n={high:0,low:0}),e>=0?(o=65536*Math.floor(e/65536),n.high=o,n.low=e-o):(o=65536*Math.floor(-e/65536),n.high=-o,n.low=e+o),n};const r={high:0,low:0};o.fromCartesian=function(e,n){t.Check.typeOf.object("cartesian",e),i.defined(n)||(n=new o);const h=n.high,a=n.low;return o.encode(e.x,r),h.x=r.high,a.x=r.low,o.encode(e.y,r),h.y=r.high,a.y=r.low,o.encode(e.z,r),h.z=r.high,a.z=r.low,n};const h=new o;o.writeElements=function(e,n,i){t.Check.defined("cartesianArray",n),t.Check.typeOf.number("index",i),t.Check.typeOf.number.greaterThanOrEquals("index",i,0),o.fromCartesian(e,h);const r=h.high,a=h.low;n[i]=r.x,n[i+1]=r.y,n[i+2]=r.z,n[i+3]=a.x,n[i+4]=a.y,n[i+5]=a.z},e.EncodedCartesian3=o}));