@tomaso909/js3d 1.14.0 → 1.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.obf.js CHANGED
@@ -1 +1 @@
1
- const a0_0x2ad885=a0_0x2f9e;(function(_0x5143a3,_0xd41484){const _0xc891ba=a0_0x2f9e,_0x4335e1=_0x5143a3();while(!![]){try{const _0x3136b0=parseInt(_0xc891ba(0x1ea))/0x1+-parseInt(_0xc891ba(0x21f))/0x2+parseInt(_0xc891ba(0x1c4))/0x3*(parseInt(_0xc891ba(0x1f6))/0x4)+parseInt(_0xc891ba(0x1f3))/0x5*(-parseInt(_0xc891ba(0x21a))/0x6)+parseInt(_0xc891ba(0x205))/0x7+-parseInt(_0xc891ba(0x1e5))/0x8+parseInt(_0xc891ba(0x192))/0x9;if(_0x3136b0===_0xd41484)break;else _0x4335e1['push'](_0x4335e1['shift']());}catch(_0x46202d){_0x4335e1['push'](_0x4335e1['shift']());}}}(a0_0x11cd,0x33bdb));var b={'length':function(_0x1dd558){const _0x597452=a0_0x2f9e;return Math[_0x597452(0x1c7)](_0x1dd558[0x0]**0x2+_0x1dd558[0x1]**0x2+_0x1dd558[0x2]**0x2);},'scalarProduct':function(_0x1cdc20,_0x3c26fb){return[_0x1cdc20[0x0]*_0x3c26fb,_0x1cdc20[0x1]*_0x3c26fb,_0x1cdc20[0x2]*_0x3c26fb];},'dot':function(_0x387362,_0x279edf){return _0x387362[0x0]*_0x279edf[0x0]+_0x387362[0x1]*_0x279edf[0x1]+_0x387362[0x2]*_0x279edf[0x2];},'angle':function(_0x42a234,_0x582036,_0x48a01a=!0x1){const _0x86f7d1=a0_0x2f9e;let _0x2ab147=this[_0x86f7d1(0x1be)](_0x42a234,_0x582036)/(this[_0x86f7d1(0x202)](_0x42a234)*this[_0x86f7d1(0x202)](_0x582036)),_0x49bc53=Math[_0x86f7d1(0x19e)](_0x2ab147);return _0x48a01a&&_0x49bc53>Math['PI']/0x2&&(_0x49bc53=Math['PI']-_0x49bc53),_0x49bc53;},'signedAngle':function(_0x2074e8,_0x498166,_0x575ef3){const _0xa6772c=a0_0x2f9e;let _0x40a22b=this['angle'](_0x2074e8,_0x498166),_0x56973c=this['cross'](_0x2074e8,_0x498166);return(this[_0xa6772c(0x1be)](_0x56973c,_0x575ef3)>=0x0?0x1:-0x1)*_0x40a22b;},'sub':function(_0x3e9135,_0xdd60de){return[_0x3e9135[0x0]-_0xdd60de[0x0],_0x3e9135[0x1]-_0xdd60de[0x1],_0x3e9135[0x2]-_0xdd60de[0x2]];},'add':function(_0x12f2e8,_0x4795a1){return[_0x12f2e8[0x0]+_0x4795a1[0x0],_0x12f2e8[0x1]+_0x4795a1[0x1],_0x12f2e8[0x2]+_0x4795a1[0x2]];},'rotate':function(_0x35b7c7,_0x3d8c0e,_0x574bbf){const _0x55949f=a0_0x2f9e;let _0x355062=_0x574bbf*Math['PI']/0xb4,_0x4a9510=Math[_0x55949f(0x1b3)](_0x355062),_0x59bbb=Math[_0x55949f(0x1b0)](_0x355062),_0x5b279f=_0x35b7c7[0x0],_0x57d2bf=_0x35b7c7[0x1],_0x32d098=_0x35b7c7[0x2],_0x544404=_0x3d8c0e[0x0],_0x1f1926=_0x3d8c0e[0x1],_0x1cd54e=_0x3d8c0e[0x2],_0x11f875=_0x544404*_0x5b279f+_0x1f1926*_0x57d2bf+_0x1cd54e*_0x32d098,_0x2ffc82=_0x544404*_0x11f875*(0x1-_0x4a9510)+_0x5b279f*_0x4a9510+(-_0x1cd54e*_0x57d2bf+_0x1f1926*_0x32d098)*_0x59bbb,_0xef368f=_0x1f1926*_0x11f875*(0x1-_0x4a9510)+_0x57d2bf*_0x4a9510+(_0x1cd54e*_0x5b279f-_0x544404*_0x32d098)*_0x59bbb,_0x29aea6=_0x1cd54e*_0x11f875*(0x1-_0x4a9510)+_0x32d098*_0x4a9510+(-_0x1f1926*_0x5b279f+_0x544404*_0x57d2bf)*_0x59bbb;return[_0x2ffc82,_0xef368f,_0x29aea6];},'fromTwoPoints':function(_0x3ec2e2,_0x44985f){return[_0x44985f[0x0]-_0x3ec2e2[0x0],_0x44985f[0x1]-_0x3ec2e2[0x1],_0x44985f[0x2]-_0x3ec2e2[0x2]];},'normalized':function(_0x42352b){const _0x22aefc=a0_0x2f9e;return b['scalarProduct'](_0x42352b,0x1/b[_0x22aefc(0x202)](_0x42352b));},'cross':function(_0x544aa0,_0xf79572){return[_0x544aa0[0x1]*_0xf79572[0x2]-_0x544aa0[0x2]*_0xf79572[0x1],_0x544aa0[0x2]*_0xf79572[0x0]-_0x544aa0[0x0]*_0xf79572[0x2],_0x544aa0[0x0]*_0xf79572[0x1]-_0x544aa0[0x1]*_0xf79572[0x0]];}},k={'distance':function(_0xfb93ee,_0x8bf9d){const _0x11329a=a0_0x2f9e;return b[_0x11329a(0x202)](b[_0x11329a(0x1ac)](_0x8bf9d,_0xfb93ee));},'move':function(_0x77172a,_0x28e3f7){const _0x418d4f=a0_0x2f9e;return b[_0x418d4f(0x219)](_0x77172a,_0x28e3f7);},'scale':function(_0x1295e1,_0x1b5639,_0x326b96){const _0x2a9ad2=a0_0x2f9e;return _0x326b96!=null&&(_0x1295e1=this[_0x2a9ad2(0x223)](_0x1295e1,b[_0x2a9ad2(0x1e7)](_0x326b96,-0x1))),_0x1295e1=b[_0x2a9ad2(0x1e7)](_0x1295e1,_0x1b5639),_0x326b96!=null&&(_0x1295e1=this[_0x2a9ad2(0x223)](_0x1295e1,_0x326b96)),_0x1295e1;},'rotate':function(_0x329d0c,_0x177ca0,_0x24934a,_0xbfef6a){const _0x27b537=a0_0x2f9e;let _0x269259=_0x24934a*Math['PI']/0xb4,_0x4aad62=Math[_0x27b537(0x1b3)](_0x269259),_0x31e588=Math[_0x27b537(0x1b0)](_0x269259),_0x578a3d=_0x329d0c[0x0],_0x5eff69=_0x329d0c[0x1],_0x3afa01=_0x329d0c[0x2];_0xbfef6a!=null&&(_0x578a3d=_0x578a3d-_0xbfef6a[0x0],_0x5eff69=_0x5eff69-_0xbfef6a[0x1],_0x3afa01=_0x3afa01-_0xbfef6a[0x2]);let _0x33ff79=_0x177ca0[0x0],_0x2b765d=_0x177ca0[0x1],_0x4ffe25=_0x177ca0[0x2],_0x53f3ce=_0x33ff79*_0x578a3d+_0x2b765d*_0x5eff69+_0x4ffe25*_0x3afa01,_0x2beecf=_0x33ff79*_0x53f3ce*(0x1-_0x4aad62)+_0x578a3d*_0x4aad62+(-_0x4ffe25*_0x5eff69+_0x2b765d*_0x3afa01)*_0x31e588,_0x4fdb90=_0x2b765d*_0x53f3ce*(0x1-_0x4aad62)+_0x5eff69*_0x4aad62+(_0x4ffe25*_0x578a3d-_0x33ff79*_0x3afa01)*_0x31e588,_0x1a9341=_0x4ffe25*_0x53f3ce*(0x1-_0x4aad62)+_0x3afa01*_0x4aad62+(-_0x2b765d*_0x578a3d+_0x33ff79*_0x5eff69)*_0x31e588,_0x32a5f5=[_0x2beecf,_0x4fdb90,_0x1a9341];return _0xbfef6a!=null&&(_0x32a5f5[0x0]=_0x32a5f5[0x0]+_0xbfef6a[0x0],_0x32a5f5[0x1]=_0x32a5f5[0x1]+_0xbfef6a[0x1],_0x32a5f5[0x2]=_0x32a5f5[0x2]+_0xbfef6a[0x2]),_0x32a5f5;},'project':function(_0x152dfd,_0x25ebd3,_0x397db5){const _0x3676bb=a0_0x2f9e;let _0x28aa47=b[_0x3676bb(0x1ac)](_0x152dfd,_0x397db5),_0xfdd731=b[_0x3676bb(0x1be)](_0x28aa47,_0x25ebd3)/b['length'](_0x25ebd3),_0x319214=b[_0x3676bb(0x1e7)](_0x25ebd3,0x1/b[_0x3676bb(0x202)](_0x25ebd3));return b[_0x3676bb(0x1ac)](_0x152dfd,b[_0x3676bb(0x1e7)](_0x319214,_0xfdd731));},'mirror':function(_0x5b517f,_0x46ecf7,_0x5e2329=[0x0,0x0,0x0]){const _0x37d2d1=a0_0x2f9e;let _0x1654c0=b['sub'](_0x5b517f,_0x5e2329),_0x5b657c=b[_0x37d2d1(0x202)](_0x46ecf7),_0x5e3f53=b['dot'](_0x1654c0,_0x46ecf7)/_0x5b657c,_0x57978b=b[_0x37d2d1(0x1e7)](_0x46ecf7,0x1/_0x5b657c);return b['sub'](_0x5b517f,b[_0x37d2d1(0x1e7)](_0x57978b,0x2*_0x5e3f53));}},v={'linspace':function(_0x5bc2f6,_0x7409a9,_0x350b9b,_0x18ec23=!0x0){const _0x20ef50=a0_0x2f9e;let _0x431403=_0x18ec23?_0x350b9b-0x1:_0x350b9b,_0x2aea77=(_0x7409a9-_0x5bc2f6)/_0x431403;return Array[_0x20ef50(0x21c)]({'length':_0x350b9b},(_0x31a231,_0x274197)=>_0x5bc2f6+_0x2aea77*_0x274197);},'cosineSpacing':function(_0xcb5f84,_0x1d4e1c,_0x2c7ee1){const _0x13b72c=a0_0x2f9e;let _0x26fb76=Array[_0x13b72c(0x21c)]({'length':_0x2c7ee1},(_0x19c242,_0x53728a)=>_0x53728a/(_0x2c7ee1-0x1))['map'](_0x594205=>(0x1-Math['cos'](_0x594205*Math['PI']))/0x2),_0x498339=[];for(let _0x18abba=0x0;_0x18abba<_0x26fb76[_0x13b72c(0x202)];_0x18abba++){let _0x470ceb=_0x26fb76[_0x18abba];_0x498339[_0x13b72c(0x1a7)](mapToSpace(_0x470ceb,[0x0,0x1],[_0xcb5f84,_0x1d4e1c]));}return _0x498339;},'normalizedCosineSpacing':function(_0x5158c9){const _0x57bbf6=a0_0x2f9e;return Array[_0x57bbf6(0x21c)]({'length':_0x5158c9},(_0x4b4257,_0x155f16)=>_0x155f16/(_0x5158c9-0x1))[_0x57bbf6(0x1d6)](_0x3865d1=>(0x1-Math['cos'](_0x3865d1*Math['PI']))/0x2);},'mapToSpace':function(_0x67765,_0x302aee,_0x2f2272){return _0x2f2272[0x1]+(_0x67765-_0x302aee[0x1])*(_0x2f2272[0x0]-_0x2f2272[0x1])/(_0x302aee[0x0]-_0x302aee[0x1]);},'solveLinearSystem':function(_0x499b40,_0x50f18e){const _0x51e95a=a0_0x2f9e;let _0x2d0ca7=_0x499b40[_0x51e95a(0x202)],_0x510c6a=[];for(let _0x10dfdb=0x0;_0x10dfdb<_0x2d0ca7;_0x10dfdb++)_0x510c6a[_0x10dfdb]=_0x499b40[_0x10dfdb]['slice'](),_0x510c6a[_0x10dfdb]['push'](_0x50f18e[_0x10dfdb]);for(let _0x29fd3a=0x0;_0x29fd3a<_0x2d0ca7;_0x29fd3a++){let _0x306b4e=_0x29fd3a;for(let _0x139347=_0x29fd3a+0x1;_0x139347<_0x2d0ca7;_0x139347++)Math[_0x51e95a(0x20b)](_0x510c6a[_0x139347][_0x29fd3a])>Math[_0x51e95a(0x20b)](_0x510c6a[_0x306b4e][_0x29fd3a])&&(_0x306b4e=_0x139347);[_0x510c6a[_0x29fd3a],_0x510c6a[_0x306b4e]]=[_0x510c6a[_0x306b4e],_0x510c6a[_0x29fd3a]];for(let _0x50e78d=_0x29fd3a+0x1;_0x50e78d<_0x2d0ca7;_0x50e78d++){let _0x5c61e7=_0x510c6a[_0x50e78d][_0x29fd3a]/_0x510c6a[_0x29fd3a][_0x29fd3a];for(let _0x43d047=_0x29fd3a;_0x43d047<=_0x2d0ca7;_0x43d047++)_0x510c6a[_0x50e78d][_0x43d047]-=_0x5c61e7*_0x510c6a[_0x29fd3a][_0x43d047];}}let _0x97cfc2=new Array(_0x2d0ca7);for(let _0x2ac8d5=_0x2d0ca7-0x1;_0x2ac8d5>=0x0;_0x2ac8d5--){_0x97cfc2[_0x2ac8d5]=_0x510c6a[_0x2ac8d5][_0x2d0ca7];for(let _0x1df691=_0x2ac8d5+0x1;_0x1df691<_0x2d0ca7;_0x1df691++)_0x97cfc2[_0x2ac8d5]-=_0x510c6a[_0x2ac8d5][_0x1df691]*_0x97cfc2[_0x1df691];_0x97cfc2[_0x2ac8d5]/=_0x510c6a[_0x2ac8d5][_0x2ac8d5];}return _0x97cfc2;},'equalWithPrecision':function(_0xbfa36a,_0x3cc58c,_0x4dc40d=0x6){const _0x6baa0b=a0_0x2f9e;let _0x58f9ac=Math[_0x6baa0b(0x1d8)](0xa,_0x4dc40d);return Math['round'](_0xbfa36a*_0x58f9ac)===Math[_0x6baa0b(0x218)](_0x3cc58c*_0x58f9ac);}},T={'multiplyTranspose':function(_0x38847c,_0x33e058){const _0x4e1d87=a0_0x2f9e;let _0x3c07d7=_0x38847c[0x0][_0x4e1d87(0x202)],_0x509f04=_0x33e058[0x0][_0x4e1d87(0x202)],_0xfd2933=[];for(let _0x398798=0x0;_0x398798<_0x3c07d7;_0x398798++){_0xfd2933[_0x398798]=[];for(let _0x34ecc4=0x0;_0x34ecc4<_0x509f04;_0x34ecc4++){let _0x1b2b77=0x0;for(let _0x13f1b9=0x0;_0x13f1b9<_0x38847c[_0x4e1d87(0x202)];_0x13f1b9++)_0x1b2b77+=_0x38847c[_0x13f1b9][_0x398798]*_0x33e058[_0x13f1b9][_0x34ecc4];_0xfd2933[_0x398798][_0x34ecc4]=_0x1b2b77;}}return _0xfd2933;},'vectorMultiplyTranspose':function(_0x358af6,_0x4d2765){const _0x55713e=a0_0x2f9e;let _0x248eb6=_0x358af6[0x0][_0x55713e(0x202)],_0x262c97=[];for(let _0x239ef4=0x0;_0x239ef4<_0x248eb6;_0x239ef4++){let _0x440218=0x0;for(let _0x4421cf=0x0;_0x4421cf<_0x358af6[_0x55713e(0x202)];_0x4421cf++)_0x440218+=_0x358af6[_0x4421cf][_0x239ef4]*_0x4d2765[_0x4421cf];_0x262c97[_0x239ef4]=_0x440218;}return _0x262c97;}},O={'from_control_points':function(_0x4470a5,_0x482afa,_0x4bb605,_0x5611c2){const _0x5af877=a0_0x2f9e;_0x5611c2===void 0x0&&(_0x5611c2=this['uniform_knot_spacing'](_0x4470a5,_0x482afa));let _0x2178b9=v[_0x5af877(0x201)](0x0,0x1,_0x4bb605),_0x1a4e3a=[];for(var _0x438543 of _0x2178b9)_0x1a4e3a['push'](this[_0x5af877(0x198)](_0x438543,_0x482afa,_0x4470a5,_0x5611c2));return _0x1a4e3a;},'from_control_points_cosine':function(_0x465c3d,_0x118ae4,_0x7c03d9,_0x33b5be){const _0x2b4118=a0_0x2f9e;_0x33b5be===void 0x0&&(_0x33b5be=this[_0x2b4118(0x1e3)](_0x465c3d,_0x118ae4));let _0x2a9475=v['normalizedCosineSpacing'](_0x7c03d9),_0x5407aa=[];for(var _0x24afc4 of _0x2a9475)_0x5407aa[_0x2b4118(0x1a7)](this[_0x2b4118(0x198)](_0x24afc4,_0x118ae4,_0x465c3d,_0x33b5be));return _0x5407aa;},'approximate_curve':function(_0x5e8feb,_0x325534,_0xc2683c=0x3,_0x441b03=!0x1){const _0x6447e5=a0_0x2f9e;if(_0x325534<_0xc2683c+0x1)throw new Error(_0x6447e5(0x1f8));if(_0x5e8feb['length']<0x2)throw new Error(_0x6447e5(0x193));let _0x5421f9=_0x5e8feb[_0x6447e5(0x202)],_0x388fe5=_0x325534,_0x2ebb06=_0x5e8feb[0x0]['length'],_0x542301=this[_0x6447e5(0x1d5)](_0x5e8feb),_0x5dda3a=this['_approximate_knot_vector'](_0x542301,_0x388fe5,_0xc2683c),_0x891436=[];for(let _0x310160=0x0;_0x310160<_0x5421f9;_0x310160++){_0x891436[_0x310160]=[];for(let _0x3fd645=0x0;_0x3fd645<_0x388fe5;_0x3fd645++)_0x891436[_0x310160][_0x3fd645]=this[_0x6447e5(0x1d4)](_0x3fd645,_0xc2683c,_0x542301[_0x310160],_0x5dda3a);}let _0x3e8752=new Array(_0x388fe5);for(let _0x4d4a88=0x0;_0x4d4a88<_0x388fe5;_0x4d4a88++)_0x3e8752[_0x4d4a88]=new Array(_0x2ebb06);if(_0x441b03){_0x3e8752[0x0]=[..._0x5e8feb[0x0]],_0x3e8752[_0x388fe5-0x1]=[..._0x5e8feb[_0x5e8feb['length']-0x1]];let _0x203e28=[];for(let _0x474c62=0x1;_0x474c62<_0x388fe5-0x1;_0x474c62++)_0x203e28['push'](_0x474c62);for(let _0x156ef4=0x0;_0x156ef4<_0x2ebb06;_0x156ef4++){let _0x121fe4=_0x5e8feb[_0x6447e5(0x1d6)](_0x16a9dd=>_0x16a9dd[_0x156ef4]);if(_0x203e28[_0x6447e5(0x202)]===0x0)continue;let _0x58b197=[],_0x26d119=[];for(let _0xf7bf8d=0x0;_0xf7bf8d<_0x5421f9;_0xf7bf8d++){_0x58b197[_0xf7bf8d]=[];for(let _0x5badea of _0x203e28)_0x58b197[_0xf7bf8d][_0x6447e5(0x1a7)](_0x891436[_0xf7bf8d][_0x5badea]);_0x26d119[_0xf7bf8d]=_0x121fe4[_0xf7bf8d]-_0x891436[_0xf7bf8d][0x0]*_0x3e8752[0x0][_0x156ef4]-_0x891436[_0xf7bf8d][_0x388fe5-0x1]*_0x3e8752[_0x388fe5-0x1][_0x156ef4];}let _0xd3bae3=T['multiplyTranspose'](_0x58b197,_0x58b197),_0x3aaace=T['vectorMultiplyTranspose'](_0x58b197,_0x26d119),_0x288668=v[_0x6447e5(0x222)](_0xd3bae3,_0x3aaace);for(let _0x3e8769=0x0;_0x3e8769<_0x203e28[_0x6447e5(0x202)];_0x3e8769++)_0x3e8752[_0x203e28[_0x3e8769]][_0x156ef4]=_0x288668[_0x3e8769];}}else for(let _0x2451c7=0x0;_0x2451c7<_0x2ebb06;_0x2451c7++){let _0x36b85a=_0x5e8feb[_0x6447e5(0x1d6)](_0x5c6c2a=>_0x5c6c2a[_0x2451c7]),_0x277ce6=T[_0x6447e5(0x1bb)](_0x891436,_0x891436),_0x4febcb=T[_0x6447e5(0x1cb)](_0x891436,_0x36b85a),_0x3b4913=v[_0x6447e5(0x222)](_0x277ce6,_0x4febcb);for(let _0x1c5533=0x0;_0x1c5533<_0x388fe5;_0x1c5533++)_0x3e8752[_0x1c5533][_0x2451c7]=_0x3b4913[_0x1c5533];}return{'controlPoints':_0x3e8752,'knots':_0x5dda3a,'degree':_0xc2683c};},'_chord_length_parameterization':function(_0x2b0389){const _0x1535ce=a0_0x2f9e;let _0x241812=[0x0],_0x5451b2=[0x0],_0x41dd5e=0x0;for(let _0xa90d3c=0x1;_0xa90d3c<_0x2b0389[_0x1535ce(0x202)];_0xa90d3c++){let _0xdfc2a0=0x0;for(let _0x47de9a=0x0;_0x47de9a<_0x2b0389[_0xa90d3c][_0x1535ce(0x202)];_0x47de9a++)_0xdfc2a0+=Math[_0x1535ce(0x1d8)](_0x2b0389[_0xa90d3c][_0x47de9a]-_0x2b0389[_0xa90d3c-0x1][_0x47de9a],0x2);_0xdfc2a0=Math['sqrt'](_0xdfc2a0),_0x41dd5e+=_0xdfc2a0,_0x5451b2[_0x1535ce(0x1a7)](_0x41dd5e);}for(let _0x11e687=0x1;_0x11e687<_0x2b0389[_0x1535ce(0x202)];_0x11e687++)_0x241812['push'](_0x5451b2[_0x11e687]/_0x41dd5e);return _0x241812;},'_approximate_knot_vector':function(_0x2d069f,_0x4fad8d,_0x2ce62e){const _0x3c666b=a0_0x2f9e;let _0x1befb9=_0x2d069f[_0x3c666b(0x202)],_0x52fc89=_0x4fad8d,_0x1cab7c=[];for(let _0x198e7c=0x0;_0x198e7c<=_0x2ce62e;_0x198e7c++)_0x1cab7c[_0x3c666b(0x1a7)](0x0);let _0x5a81b4=(_0x1befb9-0x1)/(_0x52fc89-_0x2ce62e);for(let _0x33943f=0x1;_0x33943f<_0x52fc89-_0x2ce62e;_0x33943f++){let _0x1b04d3=0x0;for(let _0x5b18a6=Math[_0x3c666b(0x1b5)](_0x33943f*_0x5a81b4);_0x5b18a6<Math[_0x3c666b(0x1b5)]((_0x33943f+0x1)*_0x5a81b4);_0x5b18a6++)_0x1b04d3+=_0x2d069f[Math[_0x3c666b(0x210)](_0x5b18a6+_0x2ce62e,_0x1befb9-0x1)];_0x1cab7c[_0x3c666b(0x1a7)](_0x1b04d3/(Math[_0x3c666b(0x1b5)]((_0x33943f+0x1)*_0x5a81b4)-Math[_0x3c666b(0x1b5)](_0x33943f*_0x5a81b4)));}for(let _0x5eb223=0x0;_0x5eb223<=_0x2ce62e;_0x5eb223++)_0x1cab7c[_0x3c666b(0x1a7)](0x1);return _0x1cab7c;},'_basis_function':function(_0x6c3f3d,_0x29124f,_0x89e8a7,_0x513a94){const _0x308156=a0_0x2f9e;if(_0x29124f===0x0)return _0x89e8a7===_0x513a94[_0x513a94[_0x308156(0x202)]-0x1]&&_0x89e8a7===_0x513a94[_0x6c3f3d+0x1]&&_0x89e8a7>_0x513a94[_0x6c3f3d]||_0x89e8a7>=_0x513a94[_0x6c3f3d]&&_0x89e8a7<_0x513a94[_0x6c3f3d+0x1]?0x1:0x0;let _0x30ac34=0x0,_0x23a6cf=0x0,_0x39d8b7=_0x513a94[_0x6c3f3d+_0x29124f]-_0x513a94[_0x6c3f3d];_0x39d8b7!==0x0&&(_0x30ac34=(_0x89e8a7-_0x513a94[_0x6c3f3d])/_0x39d8b7*this['_basis_function'](_0x6c3f3d,_0x29124f-0x1,_0x89e8a7,_0x513a94));let _0x2a87d9=_0x513a94[_0x6c3f3d+_0x29124f+0x1]-_0x513a94[_0x6c3f3d+0x1];return _0x2a87d9!==0x0&&(_0x23a6cf=(_0x513a94[_0x6c3f3d+_0x29124f+0x1]-_0x89e8a7)/_0x2a87d9*this['_basis_function'](_0x6c3f3d+0x1,_0x29124f-0x1,_0x89e8a7,_0x513a94)),_0x30ac34+_0x23a6cf;},'uniform_knot_spacing':function(_0x2a4f60,_0x334687){const _0x212bf7=a0_0x2f9e;let _0x295799=_0x2a4f60['length']+_0x334687+0x1,_0x2d297e=[],_0x97197=_0x295799-(_0x334687+0x1)*0x2;for(var _0x3a8371=0x0;_0x3a8371<_0x334687+0x1;_0x3a8371++)_0x2d297e[_0x212bf7(0x1a7)](0x0);for(var _0x3a8371=0x0;_0x3a8371<_0x97197;_0x3a8371++)_0x2d297e['push'](_0x3a8371+0x1);let _0x1f08b4=_0x2d297e[_0x2d297e[_0x212bf7(0x202)]-0x1]+0x1;for(var _0x3a8371=0x0;_0x3a8371<_0x334687+0x1;_0x3a8371++)_0x2d297e['push'](_0x1f08b4);return _0x2d297e;},'uniform_knot_spacing_normalized':function(_0x445d19,_0x4d4fd6){const _0x4c5e86=a0_0x2f9e;let _0x45209a=_0x445d19,_0x38a324=[],_0x54d794=_0x45209a+_0x4d4fd6+0x1-(_0x4d4fd6+0x1)*0x2;for(let _0x158cda=0x0;_0x158cda<=_0x4d4fd6;_0x158cda++)_0x38a324[_0x4c5e86(0x1a7)](0x0);if(_0x54d794>0x0){let _0x2d0a49=0x1/(_0x54d794+0x1);for(let _0x529368=0x0;_0x529368<_0x54d794;_0x529368++)_0x38a324[_0x4c5e86(0x1a7)]((_0x529368+0x1)*_0x2d0a49);}for(let _0x325ddf=0x0;_0x325ddf<=_0x4d4fd6;_0x325ddf++)_0x38a324[_0x4c5e86(0x1a7)](0x1);return _0x38a324;},'bspline':function(_0x1aeff9,_0x493625,_0x21c449,_0x8b2994,_0x5ab742,_0x7e8ff7){const _0x107c3b=a0_0x2f9e;var _0x2f1956,_0x595b26,_0x468d3a,_0x26338c,_0x50d199=_0x21c449[_0x107c3b(0x202)],_0x494c0a=_0x21c449[0x0][_0x107c3b(0x202)];if(_0x493625<0x1)throw new Error(_0x107c3b(0x1d7));if(_0x493625>_0x50d199-0x1)throw new Error('degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201');if(!_0x5ab742){for(_0x5ab742=[],_0x2f1956=0x0;_0x2f1956<_0x50d199;_0x2f1956++)_0x5ab742[_0x2f1956]=0x1;}if(_0x8b2994){if(_0x8b2994[_0x107c3b(0x202)]!==_0x50d199+_0x493625+0x1)throw new Error(_0x107c3b(0x195));}else{var _0x8b2994=[];for(_0x2f1956=0x0;_0x2f1956<_0x50d199+_0x493625+0x1;_0x2f1956++)_0x8b2994[_0x2f1956]=_0x2f1956;}var _0x1cf2c4=[_0x493625,_0x8b2994[_0x107c3b(0x202)]-0x1-_0x493625],_0xd41bfa=_0x8b2994[_0x1cf2c4[0x0]],_0x990caa=_0x8b2994[_0x1cf2c4[0x1]];if(_0x1aeff9=_0x1aeff9*(_0x990caa-_0xd41bfa)+_0xd41bfa,_0x1aeff9<_0xd41bfa||_0x1aeff9>_0x990caa)throw new Error(_0x107c3b(0x1a9));for(_0x468d3a=_0x1cf2c4[0x0];_0x468d3a<_0x1cf2c4[0x1]&&!(_0x1aeff9>=_0x8b2994[_0x468d3a]&&_0x1aeff9<=_0x8b2994[_0x468d3a+0x1]);_0x468d3a++);var _0x16994c=[];for(_0x2f1956=0x0;_0x2f1956<_0x50d199;_0x2f1956++){for(_0x16994c[_0x2f1956]=[],_0x595b26=0x0;_0x595b26<_0x494c0a;_0x595b26++)_0x16994c[_0x2f1956][_0x595b26]=_0x21c449[_0x2f1956][_0x595b26]*_0x5ab742[_0x2f1956];_0x16994c[_0x2f1956][_0x494c0a]=_0x5ab742[_0x2f1956];}var _0x3391f5;for(_0x26338c=0x1;_0x26338c<=_0x493625+0x1;_0x26338c++)for(_0x2f1956=_0x468d3a;_0x2f1956>_0x468d3a-_0x493625-0x1+_0x26338c;_0x2f1956--)for(_0x3391f5=(_0x1aeff9-_0x8b2994[_0x2f1956])/(_0x8b2994[_0x2f1956+_0x493625+0x1-_0x26338c]-_0x8b2994[_0x2f1956]),_0x595b26=0x0;_0x595b26<_0x494c0a+0x1;_0x595b26++)_0x16994c[_0x2f1956][_0x595b26]=(0x1-_0x3391f5)*_0x16994c[_0x2f1956-0x1][_0x595b26]+_0x3391f5*_0x16994c[_0x2f1956][_0x595b26];var _0x7e8ff7=_0x7e8ff7||[];for(_0x2f1956=0x0;_0x2f1956<_0x494c0a;_0x2f1956++)_0x7e8ff7[_0x2f1956]=_0x16994c[_0x468d3a][_0x2f1956]/_0x16994c[_0x468d3a][_0x494c0a];return _0x7e8ff7;}},A={'_gaussJ':{'solve':function(_0xfe442b,_0x57f032){const _0x590f39=a0_0x2f9e;let _0x172433=_0xfe442b[_0x590f39(0x202)];for(let _0x4d8978=0x0;_0x4d8978<_0x172433;_0x4d8978++){let _0x235d1e=0x0,_0x5a8488=Number[_0x590f39(0x21d)];for(let _0xe539e2=_0x4d8978;_0xe539e2<_0x172433;_0xe539e2++)Math['abs'](_0xfe442b[_0xe539e2][_0x4d8978])>_0x5a8488&&(_0x235d1e=_0xe539e2,_0x5a8488=Math[_0x590f39(0x20b)](_0xfe442b[_0xe539e2][_0x4d8978]));this[_0x590f39(0x1b1)](_0xfe442b,_0x4d8978,_0x235d1e);for(let _0x393015=_0x4d8978+0x1;_0x393015<_0x172433;_0x393015++){let _0x4c808d=_0xfe442b[_0x393015][_0x4d8978]/_0xfe442b[_0x4d8978][_0x4d8978];for(let _0x85d8c4=_0x4d8978;_0x85d8c4<_0x172433+0x1;_0x85d8c4++)_0xfe442b[_0x393015][_0x85d8c4]-=_0xfe442b[_0x4d8978][_0x85d8c4]*_0x4c808d;}}for(let _0x77d579=_0x172433-0x1;_0x77d579>=0x0;_0x77d579--){let _0x36d7d1=_0xfe442b[_0x77d579][_0x172433]/_0xfe442b[_0x77d579][_0x77d579];_0x57f032[_0x77d579]=_0x36d7d1;for(let _0x597daa=_0x77d579-0x1;_0x597daa>=0x0;_0x597daa--)_0xfe442b[_0x597daa][_0x172433]-=_0xfe442b[_0x597daa][_0x77d579]*_0x36d7d1,_0xfe442b[_0x597daa][_0x77d579]=0x0;}},'zerosMat':function(_0x145add,_0x558f2d){const _0x24fcac=a0_0x2f9e;let _0x23ab66=[];for(let _0x3b9ffa=0x0;_0x3b9ffa<_0x145add;_0x3b9ffa++)_0x23ab66[_0x24fcac(0x1a7)](new Array(_0x558f2d)[_0x24fcac(0x1df)](0x0));return _0x23ab66;},'printMat':function(_0x39e736){const _0x5bd773=a0_0x2f9e;_0x39e736[_0x5bd773(0x1e0)](_0x582f9b=>console[_0x5bd773(0x1ce)](_0x582f9b));},'swapRows':function(_0x221bc6,_0x49c40b,_0x596722){let _0xfaf035=_0x221bc6[_0x49c40b];_0x221bc6[_0x49c40b]=_0x221bc6[_0x596722],_0x221bc6[_0x596722]=_0xfaf035;}},'getNaturalKs':function(_0x14dd51,_0x51d7bc,_0x4661b3){const _0x36e085=a0_0x2f9e;let _0x517c92=_0x14dd51[_0x36e085(0x202)]-0x1,_0x460a95=this[_0x36e085(0x1ff)][_0x36e085(0x1e8)](_0x517c92+0x1,_0x517c92+0x2);for(let _0x2b1cc7=0x1;_0x2b1cc7<_0x517c92;_0x2b1cc7++)_0x460a95[_0x2b1cc7][_0x2b1cc7-0x1]=0x1/(_0x14dd51[_0x2b1cc7]-_0x14dd51[_0x2b1cc7-0x1]),_0x460a95[_0x2b1cc7][_0x2b1cc7]=0x2*(0x1/(_0x14dd51[_0x2b1cc7]-_0x14dd51[_0x2b1cc7-0x1])+0x1/(_0x14dd51[_0x2b1cc7+0x1]-_0x14dd51[_0x2b1cc7])),_0x460a95[_0x2b1cc7][_0x2b1cc7+0x1]=0x1/(_0x14dd51[_0x2b1cc7+0x1]-_0x14dd51[_0x2b1cc7]),_0x460a95[_0x2b1cc7][_0x517c92+0x1]=0x3*((_0x51d7bc[_0x2b1cc7]-_0x51d7bc[_0x2b1cc7-0x1])/(_0x14dd51[_0x2b1cc7]-_0x14dd51[_0x2b1cc7-0x1])**0x2+(_0x51d7bc[_0x2b1cc7+0x1]-_0x51d7bc[_0x2b1cc7])/(_0x14dd51[_0x2b1cc7+0x1]-_0x14dd51[_0x2b1cc7])**0x2);_0x460a95[0x0][0x0]=0x2/(_0x14dd51[0x1]-_0x14dd51[0x0]),_0x460a95[0x0][0x1]=0x1/(_0x14dd51[0x1]-_0x14dd51[0x0]),_0x460a95[0x0][_0x517c92+0x1]=0x3*(_0x51d7bc[0x1]-_0x51d7bc[0x0])/(_0x14dd51[0x1]-_0x14dd51[0x0])**0x2,_0x460a95[_0x517c92][_0x517c92-0x1]=0x1/(_0x14dd51[_0x517c92]-_0x14dd51[_0x517c92-0x1]),_0x460a95[_0x517c92][_0x517c92]=0x2/(_0x14dd51[_0x517c92]-_0x14dd51[_0x517c92-0x1]),_0x460a95[_0x517c92][_0x517c92+0x1]=0x3*(_0x51d7bc[_0x517c92]-_0x51d7bc[_0x517c92-0x1])/(_0x14dd51[_0x517c92]-_0x14dd51[_0x517c92-0x1])**0x2,this[_0x36e085(0x1ff)]['solve'](_0x460a95,_0x4661b3);},'from_control_points':function(_0x11c518,_0x118805){const _0x5989ba=a0_0x2f9e;let _0x56a097=_0x118805[_0x5989ba(0x1d6)](_0x22f50d=>_0x22f50d[0x0]),_0x157dbd=_0x118805['map'](_0x58ec72=>_0x58ec72[0x1]),_0x1da719=new Array(_0x56a097[_0x5989ba(0x202)])[_0x5989ba(0x1df)](0x0);this[_0x5989ba(0x1dc)](_0x56a097,_0x157dbd,_0x1da719);let _0x2d1781=[];for(let _0x32cc0d of _0x11c518){let _0x177cda=0x1;for(;_0x56a097[_0x177cda]<_0x32cc0d;)_0x177cda++;let _0x2d2154=(_0x32cc0d-_0x56a097[_0x177cda-0x1])/(_0x56a097[_0x177cda]-_0x56a097[_0x177cda-0x1]),_0x24c244=_0x1da719[_0x177cda-0x1]*(_0x56a097[_0x177cda]-_0x56a097[_0x177cda-0x1])-(_0x157dbd[_0x177cda]-_0x157dbd[_0x177cda-0x1]),_0x19f572=-_0x1da719[_0x177cda]*(_0x56a097[_0x177cda]-_0x56a097[_0x177cda-0x1])+(_0x157dbd[_0x177cda]-_0x157dbd[_0x177cda-0x1]),_0x4ebc6c=(0x1-_0x2d2154)*_0x157dbd[_0x177cda-0x1]+_0x2d2154*_0x157dbd[_0x177cda]+_0x2d2154*(0x1-_0x2d2154)*(_0x24c244*(0x1-_0x2d2154)+_0x19f572*_0x2d2154);_0x2d1781['push']([_0x32cc0d,_0x4ebc6c]);}return _0x2d1781;}},V=class{constructor(_0x5762c3){const _0x46168a=a0_0x2f9e;this['points']=_0x5762c3,this[_0x46168a(0x1ab)]=[],this[_0x46168a(0x1f5)]=[0x0];for(let _0x52a4fa=0x1;_0x52a4fa<_0x5762c3['length'];_0x52a4fa++){let _0x36a9e0=_0x5762c3[_0x52a4fa][0x0]-_0x5762c3[_0x52a4fa-0x1][0x0],_0xb1f803=_0x5762c3[_0x52a4fa][0x1]-_0x5762c3[_0x52a4fa-0x1][0x1],_0x5874e8=_0x5762c3[_0x52a4fa][0x2]-_0x5762c3[_0x52a4fa-0x1][0x2],_0xbbe3fd=Math[_0x46168a(0x1c7)](_0x36a9e0*_0x36a9e0+_0xb1f803*_0xb1f803+_0x5874e8*_0x5874e8);this[_0x46168a(0x1ab)][_0x46168a(0x1a7)](_0xbbe3fd),this[_0x46168a(0x1f5)][_0x46168a(0x1a7)](this[_0x46168a(0x1f5)][this[_0x46168a(0x1f5)]['length']-0x1]+_0xbbe3fd);}this[_0x46168a(0x20f)]=this['segmentLengths'][_0x46168a(0x202)]>0x0?this['cumulativeLength'][this[_0x46168a(0x1f5)][_0x46168a(0x202)]-0x1]:0x0;}[a0_0x2ad885(0x1db)](_0x5df404){const _0x49d4cd=a0_0x2ad885;let _0x3e99bc=0x0,_0x590bef=Number[_0x49d4cd(0x1bd)];for(let _0x4a89ca=0x0;_0x4a89ca<this[_0x49d4cd(0x1fb)]['length']-0x1;_0x4a89ca++){let _0x460bbc=this[_0x49d4cd(0x1fb)][_0x4a89ca],_0x3d6e31=this[_0x49d4cd(0x1fb)][_0x4a89ca+0x1],_0x1828f7=_0x5df404,_0x5898cc=[_0x3d6e31[0x0]-_0x460bbc[0x0],_0x3d6e31[0x1]-_0x460bbc[0x1],_0x3d6e31[0x2]-_0x460bbc[0x2]],_0x241697=[_0x1828f7[0x0]-_0x460bbc[0x0],_0x1828f7[0x1]-_0x460bbc[0x1],_0x1828f7[0x2]-_0x460bbc[0x2]],_0x360bef=_0x5898cc[0x0]*_0x5898cc[0x0]+_0x5898cc[0x1]*_0x5898cc[0x1]+_0x5898cc[0x2]*_0x5898cc[0x2];if(_0x360bef===0x0)continue;let _0x53eba1=(_0x241697[0x0]*_0x5898cc[0x0]+_0x241697[0x1]*_0x5898cc[0x1]+_0x241697[0x2]*_0x5898cc[0x2])/_0x360bef;_0x53eba1=Math[_0x49d4cd(0x191)](0x0,Math[_0x49d4cd(0x210)](0x1,_0x53eba1));let _0x429721=[_0x460bbc[0x0]+_0x53eba1*_0x5898cc[0x0],_0x460bbc[0x1]+_0x53eba1*_0x5898cc[0x1],_0x460bbc[0x2]+_0x53eba1*_0x5898cc[0x2]],_0x223975=Math[_0x49d4cd(0x1d8)](_0x1828f7[0x0]-_0x429721[0x0],0x2)+Math[_0x49d4cd(0x1d8)](_0x1828f7[0x1]-_0x429721[0x1],0x2)+Math[_0x49d4cd(0x1d8)](_0x1828f7[0x2]-_0x429721[0x2],0x2);_0x223975<_0x590bef&&(_0x590bef=_0x223975,_0x3e99bc=(this['cumulativeLength'][_0x4a89ca]+_0x53eba1*this[_0x49d4cd(0x1ab)][_0x4a89ca])/this['totalLength']);}return _0x3e99bc;}[a0_0x2ad885(0x19f)](_0x18db46){const _0x202a6e=a0_0x2ad885;if(_0x18db46<=0x0)return[...this[_0x202a6e(0x1fb)][0x0]];if(_0x18db46>=0x1)return[...this[_0x202a6e(0x1fb)][this['points']['length']-0x1]];let _0x1462c3=_0x18db46*this['totalLength'];for(let _0x43f85a=0x0;_0x43f85a<this[_0x202a6e(0x1f5)]['length']-0x1;_0x43f85a++)if(this[_0x202a6e(0x1f5)][_0x43f85a]<=_0x1462c3&&_0x1462c3<=this['cumulativeLength'][_0x43f85a+0x1]){let _0x1bef95=(_0x1462c3-this['cumulativeLength'][_0x43f85a])/this['segmentLengths'][_0x43f85a],_0xde6edc=this[_0x202a6e(0x1fb)][_0x43f85a],_0x46a20c=this[_0x202a6e(0x1fb)][_0x43f85a+0x1],_0x1a0942=(0x1-_0x1bef95)*_0xde6edc[0x0]+_0x1bef95*_0x46a20c[0x0],_0xb99fe4=(0x1-_0x1bef95)*_0xde6edc[0x1]+_0x1bef95*_0x46a20c[0x1],_0x2fc4c5=(0x1-_0x1bef95)*_0xde6edc[0x2]+_0x1bef95*_0x46a20c[0x2];return[_0x1a0942,_0xb99fe4,_0x2fc4c5];}return[...this[_0x202a6e(0x1fb)][this[_0x202a6e(0x1fb)][_0x202a6e(0x202)]-0x1]];}},K={'_formatNumber':function(_0x37c4ce){const _0x36a6a0=a0_0x2ad885;return Number[_0x36a6a0(0x1b6)](_0x37c4ce)?_0x37c4ce[_0x36a6a0(0x199)]():Math[_0x36a6a0(0x20b)](_0x37c4ce)<0.001||Math[_0x36a6a0(0x20b)](_0x37c4ce)>0xf4240?_0x37c4ce['toExponential'](0x6):_0x37c4ce[_0x36a6a0(0x1a4)](0x6)['replace'](/\.?0+$/,'');},'_toHollerith':function(_0x5a30f7){return _0x5a30f7?_0x5a30f7['length']+'H'+_0x5a30f7:'0H';},'_generateGlobalSection':function(_0xe30d1a){const _0x5280f2=a0_0x2ad885;let _0xc7f09=new Date()[_0x5280f2(0x1e6)]()[_0x5280f2(0x1cf)](0x0,0x13)['replace'](/[-:]/g,'')[_0x5280f2(0x20d)]('T','.'),_0x2e7013=['1H,',_0x5280f2(0x1fd),this[_0x5280f2(0x203)](_0xe30d1a['filename']),this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x1ec)]),this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x208)]),this[_0x5280f2(0x203)](_0x5280f2(0x19d)),'32','38','6',_0x5280f2(0x20e),'15',this[_0x5280f2(0x203)](_0xe30d1a['filename']),_0x5280f2(0x212),'3',this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x1ae)][_0x5280f2(0x20a)]()),'1','0.01',this[_0x5280f2(0x203)](_0xc7f09),_0x5280f2(0x220),_0x5280f2(0x1aa),this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x1f1)]),this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x208)]),'11','0',this[_0x5280f2(0x203)](_0xc7f09)][_0x5280f2(0x19c)](',')+';',_0x1badce='',_0x3f73e0=0x1,_0x1ed3f7=0x0;for(;_0x1ed3f7<_0x2e7013[_0x5280f2(0x202)];){let _0x141dd1=_0x2e7013[_0x5280f2(0x1cc)](_0x1ed3f7,0x48);_0x1badce+=_0x141dd1[_0x5280f2(0x1ba)](0x48)+('G'+_0x3f73e0[_0x5280f2(0x199)]()['padStart'](0x7)+'\x0a'),_0x1ed3f7+=0x48,_0x3f73e0++;}return _0x1badce;},'_formatDirectoryLine':function(_0x52a90f,_0x31fcb9,_0x485441,_0x4bf04a,_0x42780d,_0x466123,_0x250a01,_0x46be3c,_0x1af6a8){const _0x412a86=a0_0x2ad885;return[_0x52a90f[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8),_0x31fcb9[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8),_0x485441[_0x412a86(0x199)]()['padStart'](0x8),_0x4bf04a[_0x412a86(0x199)]()['padStart'](0x8),_0x42780d[_0x412a86(0x199)]()['padStart'](0x8),_0x466123[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8),_0x250a01[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8),_0x46be3c[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8)][_0x412a86(0x19c)]('')['padEnd'](0x48)+('D'+_0x1af6a8[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x7)+'\x0a');},'_formatParameterLine':function(_0x26cfbf,_0x40e663,_0x2e38bc){const _0xe48171=a0_0x2ad885;let _0x20b36d='',_0x6b9e0f=_0x40e663,_0xae7b69=0x0;for(;_0xae7b69<_0x26cfbf[_0xe48171(0x202)];){let _0x3389=Math[_0xe48171(0x210)](_0xae7b69+0x40,_0x26cfbf['length']);if(_0x3389<_0x26cfbf[_0xe48171(0x202)]&&_0x26cfbf[_0x3389]!==','){let _0x21ca73=_0x26cfbf[_0xe48171(0x1b2)](',',_0x3389);_0x21ca73>_0xae7b69&&(_0x3389=_0x21ca73+0x1);}let _0x1e0663=_0x26cfbf[_0xe48171(0x1c2)](_0xae7b69,_0x3389);_0x20b36d+=_0x1e0663[_0xe48171(0x1ba)](0x40)+('\x20'+_0x2e38bc[_0xe48171(0x199)]()['padStart'](0x7)+'P'+_0x6b9e0f[_0xe48171(0x199)]()[_0xe48171(0x19b)](0x7)+'\x0a'),_0xae7b69=_0x3389,_0x6b9e0f++;}return _0x20b36d;},'_formatSection':function(_0x579f8e,_0x27e781){const _0x1ecb9d=a0_0x2ad885;return _0x27e781['map']((_0x24f4fc,_0x4a42f9)=>_0x24f4fc[_0x1ecb9d(0x20d)](/\n$/,'')+'\x0a')[_0x1ecb9d(0x19c)]('');},'_formatTerminateSection':function(_0x1ff42b,_0x1a07da,_0x2eb6ce,_0x4a3850){const _0x5e355e=a0_0x2ad885;return['S'+_0x1ff42b[_0x5e355e(0x199)]()[_0x5e355e(0x19b)](0x7),'G'+_0x1a07da[_0x5e355e(0x199)]()['padStart'](0x7),'D'+_0x2eb6ce[_0x5e355e(0x199)]()['padStart'](0x7),'P'+_0x4a3850[_0x5e355e(0x199)]()[_0x5e355e(0x19b)](0x7)]['join']('')[_0x5e355e(0x1ba)](0x48)+'T\x20\x20\x20\x20\x20\x201\x0a';},'_createPointEntity':function(_0x36d125,_0x313d8b,_0x24cc36){const _0xda233d=a0_0x2ad885;let _0x8e6735=_0xda233d(0x1ca)+this[_0xda233d(0x224)](_0x36d125[0x0])+','+this[_0xda233d(0x224)](_0x36d125[0x1])+','+this[_0xda233d(0x224)](_0x36d125[0x2])+',0.0;',_0x48da02=_0x313d8b,_0x1b49e6=this[_0xda233d(0x211)](_0x8e6735,_0x24cc36,_0x48da02),_0x292ec2=_0x1b49e6[_0xda233d(0x1af)]('\x0a')[_0xda233d(0x202)]-0x1,_0x17146f=this[_0xda233d(0x1eb)](0x74,_0x24cc36,0x0,0x0,0x0,0x0,0x0,0x0,_0x313d8b);return _0x17146f+=this[_0xda233d(0x1eb)](0x74,0x0,0x0,_0x292ec2,0x0,0x0,0x0,0x0,_0x313d8b+0x1),{'directoryEntry':_0x17146f,'parameterEntry':_0x1b49e6,'lineCount':_0x292ec2};},'_createPolylineEntity':function(_0x28dc47,_0x2dca66,_0x2b61a2){const _0x309db1=a0_0x2ad885;let _0x30641d=_0x309db1(0x1fa)+(_0x28dc47[_0x309db1(0x202)]-0x1);for(let _0x539b35=0x0;_0x539b35<_0x28dc47[_0x309db1(0x202)];_0x539b35++){let _0x49c860=_0x28dc47[_0x539b35];_0x30641d+=','+this[_0x309db1(0x224)](_0x49c860[0x0])+','+this[_0x309db1(0x224)](_0x49c860[0x1])+','+this[_0x309db1(0x224)](_0x49c860[0x2]);}_0x30641d+=';';let _0x304ca1=_0x2dca66,_0x285870=this['_formatParameterLine'](_0x30641d,_0x2b61a2,_0x304ca1),_0x471c89=_0x285870[_0x309db1(0x1af)]('\x0a')[_0x309db1(0x202)]-0x1,_0x1e157a=this['_formatDirectoryLine'](0x6a,_0x2b61a2,0x0,0x0,0x0,0x0,0x0,0x0,_0x2dca66);return _0x1e157a+=this['_formatDirectoryLine'](0x6a,0x0,0x0,_0x471c89,0x0,0x0,0x0,0x0,_0x2dca66+0x1),{'directoryEntry':_0x1e157a,'parameterEntry':_0x285870,'lineCount':_0x471c89};},'_createNurbsCurveEntity':function(_0x306c5a,_0x46bb97,_0x5bf8c0,_0x3d9249,_0x28b51f,_0x116bab){const _0x3a5543=a0_0x2ad885;let _0x5c6abc=_0x3a5543(0x1b4)+(_0x306c5a[_0x3a5543(0x202)]-0x1)+','+_0x3d9249+',0,0,1,0';for(let _0x5b8b6b of _0x5bf8c0)_0x5c6abc+=','+this[_0x3a5543(0x224)](_0x5b8b6b);for(let _0xb2561b of _0x46bb97)_0x5c6abc+=','+this[_0x3a5543(0x224)](_0xb2561b);for(let _0x58b2ab=0x0;_0x58b2ab<_0x306c5a[_0x3a5543(0x202)];_0x58b2ab++){let _0x152fd7=_0x306c5a[_0x58b2ab];_0x5c6abc+=','+this[_0x3a5543(0x224)](_0x152fd7[0x0])+','+this[_0x3a5543(0x224)](_0x152fd7[0x1])+','+this[_0x3a5543(0x224)](_0x152fd7[0x2]);}_0x5c6abc+=','+this['_formatNumber'](_0x5bf8c0[0x0])+','+this[_0x3a5543(0x224)](_0x5bf8c0[_0x5bf8c0[_0x3a5543(0x202)]-0x1]),_0x5c6abc+=_0x3a5543(0x215),_0x5c6abc+=';';let _0x3fd24e=_0x28b51f,_0x459725=this[_0x3a5543(0x211)](_0x5c6abc,_0x116bab,_0x3fd24e),_0x2b5647=_0x459725[_0x3a5543(0x1af)]('\x0a')['length']-0x1,_0x40638b=this[_0x3a5543(0x1eb)](0x7e,_0x116bab,0x0,0x0,0x0,0x0,0x0,0x0,_0x28b51f);return _0x40638b+=this['_formatDirectoryLine'](0x7e,0x0,0x0,_0x2b5647,0x0,0x0,0x0,0x0,_0x28b51f+0x1),{'directoryEntry':_0x40638b,'parameterEntry':_0x459725,'lineCount':_0x2b5647};},'_createNurbsSurfaceEntity':function(_0x1e9e1a,_0x2034db,_0x426ae7,_0x3bf382,_0x12a843,_0x580111,_0x31a59a,_0x354305){const _0x267352=a0_0x2ad885;let _0x28d761=_0x1e9e1a[_0x267352(0x202)],_0x13501a=_0x1e9e1a[0x0][_0x267352(0x202)],_0x302201=_0x28d761-0x1,_0x5245fb=_0x13501a-0x1,_0x3268ee=_0x267352(0x1ad)+_0x302201+','+_0x5245fb+','+_0x12a843+','+_0x580111+_0x267352(0x217);for(let _0x68e0c5 of _0x426ae7)_0x3268ee+=','+this[_0x267352(0x224)](_0x68e0c5);for(let _0x2e384f of _0x3bf382)_0x3268ee+=','+this[_0x267352(0x224)](_0x2e384f);for(let _0x2cb275=0x0;_0x2cb275<=_0x5245fb;_0x2cb275++)for(let _0x5eed8d=0x0;_0x5eed8d<=_0x302201;_0x5eed8d++)_0x3268ee+=','+this[_0x267352(0x224)](_0x2034db[_0x5eed8d][_0x2cb275]);for(let _0x4252fc=0x0;_0x4252fc<=_0x5245fb;_0x4252fc++)for(let _0x50e83d=0x0;_0x50e83d<=_0x302201;_0x50e83d++){let _0x3d1339=_0x1e9e1a[_0x50e83d][_0x4252fc];_0x3268ee+=','+this[_0x267352(0x224)](_0x3d1339[0x0])+','+this['_formatNumber'](_0x3d1339[0x1])+','+this['_formatNumber'](_0x3d1339[0x2]);}_0x3268ee+=','+this[_0x267352(0x224)](_0x426ae7[0x0])+','+this[_0x267352(0x224)](_0x426ae7[_0x426ae7['length']-0x1]),_0x3268ee+=','+this['_formatNumber'](_0x3bf382[0x0])+','+this[_0x267352(0x224)](_0x3bf382[_0x3bf382[_0x267352(0x202)]-0x1]),_0x3268ee+=';';let _0x185c9d=_0x31a59a,_0x2c195b=this[_0x267352(0x211)](_0x3268ee,_0x354305,_0x185c9d),_0x48777d=_0x2c195b[_0x267352(0x1af)]('\x0a')[_0x267352(0x202)]-0x1,_0x344e5f=this[_0x267352(0x1eb)](0x80,_0x354305,0x0,0x0,0x0,0x0,0x0,0x0,_0x31a59a);return _0x344e5f+=this[_0x267352(0x1eb)](0x80,0x0,0x0,_0x48777d,0x0,0x0,0x0,0x0,_0x31a59a+0x1),{'directoryEntry':_0x344e5f,'parameterEntry':_0x2c195b,'lineCount':_0x48777d};},'nurbsSurfaceToIges':function(_0x3e4dab,_0x163cb0={}){const _0x360acb=a0_0x2ad885;let _0x55c2c8={'units':'MM','filename':'nurbs_surface.iges','author':_0x360acb(0x206),'organization':'D#','degreeU':0x3,'degreeV':0x3,'weights':null,'knotsU':null,'knotsV':null,..._0x163cb0};if(!Array[_0x360acb(0x1c1)](_0x3e4dab)||_0x3e4dab[_0x360acb(0x202)]===0x0||!Array['isArray'](_0x3e4dab[0x0]))throw new Error(_0x360acb(0x21b));let _0x45e42c=_0x3e4dab['length'],_0x224f0b=_0x3e4dab[0x0]['length'];if(_0x45e42c<_0x55c2c8[_0x360acb(0x1ef)]+0x1||_0x224f0b<_0x55c2c8[_0x360acb(0x1a3)]+0x1)throw new Error(_0x360acb(0x1e2));let _0x2ba281=_0x3e4dab[_0x360acb(0x1d6)](_0x849b=>_0x849b[_0x360acb(0x1d6)](_0x4a737f=>{const _0x1de8a7=_0x360acb;if(!Array[_0x1de8a7(0x1c1)](_0x4a737f)||_0x4a737f[_0x1de8a7(0x202)]<0x2)throw new Error('Invalid\x20control\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]');return[_0x4a737f[0x0]||0x0,_0x4a737f[0x1]||0x0,_0x4a737f[0x2]||0x0];})),_0x302164=_0x55c2c8['weights'];_0x302164||(_0x302164=new Array(_0x45e42c)[_0x360acb(0x1df)](0x0)[_0x360acb(0x1d6)](()=>new Array(_0x224f0b)[_0x360acb(0x1df)](0x1)));let _0x32f191=_0x55c2c8[_0x360acb(0x1b8)];if(!_0x32f191)throw new Error(_0x360acb(0x1a2));let _0xf846fe=_0x55c2c8[_0x360acb(0x1c8)];if(!_0xf846fe)throw new Error(_0x360acb(0x1a2));let _0x355552='',_0x433e24='',_0x203236='',_0x2d23a2=0x1,_0x33efcf=0x1;_0x355552=this[_0x360acb(0x226)](_0x55c2c8);let _0x1889e7=this[_0x360acb(0x1d1)](_0x2ba281,_0x302164,_0x32f191,_0xf846fe,_0x55c2c8[_0x360acb(0x1ef)],_0x55c2c8['degreeV'],_0x33efcf,_0x2d23a2);_0x433e24+=_0x1889e7['directoryEntry'],_0x203236+=_0x1889e7[_0x360acb(0x1fe)],_0x33efcf+=0x2,_0x2d23a2+=_0x1889e7[_0x360acb(0x20c)];let _0x2e2284=this[_0x360acb(0x1bf)](_0x360acb(0x1da),[_0x360acb(0x229),_0x360acb(0x1c6)]),_0x1c15d2=this[_0x360acb(0x1ed)](_0x2e2284[_0x360acb(0x1af)]('\x0a')[_0x360acb(0x202)]-0x1,_0x355552[_0x360acb(0x1af)]('\x0a')[_0x360acb(0x202)]-0x1,_0x433e24['split']('\x0a')[_0x360acb(0x202)]-0x1,_0x203236[_0x360acb(0x1af)]('\x0a')[_0x360acb(0x202)]-0x1);return _0x2e2284+_0x355552+_0x433e24+_0x203236+_0x1c15d2;},'geometryToIges':function(_0x2ecab0,_0x4a6531={}){const _0x489484=a0_0x2ad885;let _0x59fa43={'units':'MM','filename':'geometry.iges','author':'LiftLab','organization':'D3',..._0x4a6531};if(!Array[_0x489484(0x1c1)](_0x2ecab0)||_0x2ecab0[_0x489484(0x202)]===0x0)throw new Error(_0x489484(0x1f4));let _0x157532='',_0x22b1fc='',_0x490cbd='',_0x553f4c=0x1,_0xa4d92d=0x1,_0x23687b=0x0;_0x157532=this[_0x489484(0x226)](_0x59fa43);for(let _0x3b74bf of _0x2ecab0){if(!_0x3b74bf||typeof _0x3b74bf!=_0x489484(0x1f2)||!_0x3b74bf[_0x489484(0x216)]||!_0x3b74bf[_0x489484(0x1c5)])throw new Error('Invalid\x20geometry\x20object.\x20Expected\x20{\x20type:\x20\x22points|polyline|nurbsCurve|nurbsSurface\x22,\x20data:\x20[...]\x20}');let _0x44a55b=_0x3b74bf[_0x489484(0x216)],_0x3a64cf=_0x3b74bf['data'],_0x4a9cc4;if(_0x44a55b===_0x489484(0x200)?_0x4a9cc4=_0x3a64cf[_0x489484(0x1d6)](_0xacca06=>_0xacca06['map'](_0x35024e=>{const _0x28a6f2=_0x489484;if(!Array['isArray'](_0x35024e)||_0x35024e['length']<0x2)throw new Error(_0x28a6f2(0x1e4));return[_0x35024e[0x0]||0x0,_0x35024e[0x1]||0x0,_0x35024e[0x2]||0x0];})):_0x4a9cc4=_0x3a64cf[_0x489484(0x1d6)](_0x562119=>{const _0xc19a32=_0x489484;if(!Array[_0xc19a32(0x1c1)](_0x562119)||_0x562119[_0xc19a32(0x202)]<0x2)throw new Error(_0xc19a32(0x1e4));return[_0x562119[0x0]||0x0,_0x562119[0x1]||0x0,_0x562119[0x2]||0x0];}),_0x4a9cc4[_0x489484(0x202)]!==0x0)switch(_0x44a55b){case _0x489484(0x1fb):for(let _0x545459 of _0x4a9cc4){_0x23687b++;let _0x4cc1e1=this[_0x489484(0x1b7)](_0x545459,_0xa4d92d,_0x553f4c);_0x22b1fc+=_0x4cc1e1[_0x489484(0x194)],_0x490cbd+=_0x4cc1e1[_0x489484(0x1fe)],_0xa4d92d+=0x2,_0x553f4c+=_0x4cc1e1[_0x489484(0x20c)];}break;case'polyline':if(_0x4a9cc4[_0x489484(0x202)]>0x1){_0x23687b++;let _0x2fd199=this[_0x489484(0x221)](_0x4a9cc4,_0xa4d92d,_0x553f4c);_0x22b1fc+=_0x2fd199[_0x489484(0x194)],_0x490cbd+=_0x2fd199[_0x489484(0x1fe)],_0xa4d92d+=0x2,_0x553f4c+=_0x2fd199[_0x489484(0x20c)];}break;case _0x489484(0x1a8):let _0x11082b=_0x3b74bf[_0x489484(0x207)]||0x3,_0x2be275=_0x4a9cc4[_0x489484(0x202)];if(_0x2be275<_0x11082b+0x1){console[_0x489484(0x1a6)](_0x489484(0x19a)+(_0x11082b+0x1)+'\x20control\x20points\x20for\x20degree\x20'+_0x11082b);continue;}let _0x1190ca=_0x3b74bf[_0x489484(0x1e1)]||new Array(_0x2be275)[_0x489484(0x1df)](0x1);if(_0x1190ca['length']!==_0x2be275)throw new Error(_0x489484(0x1f0));let _0x2aa55c=_0x3b74bf[_0x489484(0x1bc)],_0x876bac=_0x2be275+_0x11082b+0x1;if(_0x2aa55c[_0x489484(0x202)]!==_0x876bac)throw new Error('Invalid\x20knot\x20vector\x20length:\x20expected\x20'+_0x876bac+_0x489484(0x1d2)+_0x2aa55c[_0x489484(0x202)]);_0x23687b++;let _0x5c5d90=this[_0x489484(0x1dd)](_0x4a9cc4,_0x1190ca,_0x2aa55c,_0x11082b,_0xa4d92d,_0x553f4c);_0x22b1fc+=_0x5c5d90['directoryEntry'],_0x490cbd+=_0x5c5d90['parameterEntry'],_0xa4d92d+=0x2,_0x553f4c+=_0x5c5d90[_0x489484(0x20c)];break;case _0x489484(0x200):let _0x21e53f=_0x3b74bf[_0x489484(0x1ef)]||0x3,_0x45ffed=_0x3b74bf[_0x489484(0x1a3)]||0x3,_0xdfb9da=_0x4a9cc4[_0x489484(0x202)],_0x35d408=_0x4a9cc4[0x0][_0x489484(0x202)];if(_0xdfb9da<_0x21e53f+0x1||_0x35d408<_0x45ffed+0x1){console['warn']('Skipping\x20NURBS\x20surface:\x20insufficient\x20control\x20points');continue;}let _0x33a6cc=_0x3b74bf[_0x489484(0x1e1)];_0x33a6cc||(_0x33a6cc=new Array(_0xdfb9da)['fill'](0x0)[_0x489484(0x1d6)](()=>new Array(_0x35d408)[_0x489484(0x1df)](0x1)));let _0x439fda=_0x3b74bf['knotsU'],_0x58df99=_0x3b74bf[_0x489484(0x1c8)];if(!_0x439fda||!_0x58df99)throw new Error(_0x489484(0x1f7));_0x23687b++;let _0xc32d50=this['_createNurbsSurfaceEntity'](_0x4a9cc4,_0x33a6cc,_0x439fda,_0x58df99,_0x21e53f,_0x45ffed,_0xa4d92d,_0x553f4c);_0x22b1fc+=_0xc32d50['directoryEntry'],_0x490cbd+=_0xc32d50[_0x489484(0x1fe)],_0xa4d92d+=0x2,_0x553f4c+=_0xc32d50[_0x489484(0x20c)];break;default:throw new Error(_0x489484(0x1d0)+_0x44a55b+_0x489484(0x21e));}}if(_0x23687b===0x0)throw new Error(_0x489484(0x1a1));let _0x5ca41f=this[_0x489484(0x1bf)]('START',[_0x489484(0x229),_0x489484(0x1de)]),_0x3e7a51=this[_0x489484(0x1ed)](_0x5ca41f[_0x489484(0x1af)]('\x0a')['length']-0x1,_0x157532[_0x489484(0x1af)]('\x0a')[_0x489484(0x202)]-0x1,_0x22b1fc[_0x489484(0x1af)]('\x0a')['length']-0x1,_0x490cbd[_0x489484(0x1af)]('\x0a')[_0x489484(0x202)]-0x1);return _0x5ca41f+_0x157532+_0x22b1fc+_0x490cbd+_0x3e7a51;},'_parseIgesNumber':function(_0x4bc00e){const _0x4259b7=a0_0x2ad885;if(!_0x4bc00e||typeof _0x4bc00e!=_0x4259b7(0x1e9))return 0x0;let _0x56e2f5=_0x4bc00e[_0x4259b7(0x1cd)]()[_0x4259b7(0x20d)](/D([+-]?\d+)/g,_0x4259b7(0x214)),_0x53a2da=parseFloat(_0x56e2f5);return isNaN(_0x53a2da)?0x0:_0x53a2da;},'_processEntity':function(_0x2ebe3b,_0x518b40,_0x1660fb,_0x59280a,_0x51effd){const _0x447c2b=a0_0x2ad885;let _0x2def76=_0x2ebe3b[_0x447c2b(0x20d)](';','')[_0x447c2b(0x1af)](',')[_0x447c2b(0x1d6)](_0x29eb02=>_0x29eb02[_0x447c2b(0x1cd)]());if(_0x2def76[_0x447c2b(0x202)]===0x0)return;switch(parseInt(_0x2def76[0x0])){case 0x74:this[_0x447c2b(0x196)](_0x2def76,_0x1660fb);break;case 0x6a:this[_0x447c2b(0x1fc)](_0x2def76,_0x518b40);break;case 0x7e:this[_0x447c2b(0x1a5)](_0x2def76,_0x59280a);break;case 0x80:_0x51effd&&this['_processNurbsSurfaceEntity'](_0x2def76,_0x51effd);break;case 0x6e:this['_processLineEntity'](_0x2def76,_0x518b40);break;default:break;}},'_processPointEntity':function(_0x42cd2c,_0x13da0f){const _0x586009=a0_0x2ad885;if(_0x42cd2c[_0x586009(0x202)]>=0x4){let _0x27c8f9=this[_0x586009(0x1c0)](_0x42cd2c[0x1]),_0x5840a7=this['_parseIgesNumber'](_0x42cd2c[0x2]),_0x5a5167=this['_parseIgesNumber'](_0x42cd2c[0x3]);_0x13da0f['push']([_0x27c8f9,_0x5840a7,_0x5a5167]);}},'_processPolylineEntity':function(_0x31f0bb,_0x11f62a){const _0x3bc89f=a0_0x2ad885;if(_0x31f0bb[_0x3bc89f(0x202)]<0x2)return;let _0x28ad4e=parseInt(_0x31f0bb[0x1]),_0x2dbd0a=0x2+(_0x28ad4e+0x1)*0x3;if(_0x31f0bb[_0x3bc89f(0x202)]<_0x2dbd0a)return;let _0x11f0bc=[];for(let _0x4972ae=0x0;_0x4972ae<=_0x28ad4e;_0x4972ae++){let _0x524f41=0x2+_0x4972ae*0x3;if(_0x524f41+0x2<_0x31f0bb[_0x3bc89f(0x202)]){let _0x30603c=this['_parseIgesNumber'](_0x31f0bb[_0x524f41]),_0x44ed28=this[_0x3bc89f(0x1c0)](_0x31f0bb[_0x524f41+0x1]),_0x56cfb9=this[_0x3bc89f(0x1c0)](_0x31f0bb[_0x524f41+0x2]);_0x11f0bc[_0x3bc89f(0x1a7)]([_0x30603c,_0x44ed28,_0x56cfb9]);}}_0x11f0bc[_0x3bc89f(0x202)]>0x1&&_0x11f62a[_0x3bc89f(0x1a7)](_0x11f0bc);},'_processLineEntity':function(_0x4112de,_0x24a0cf){const _0x79ca5c=a0_0x2ad885;if(_0x4112de[_0x79ca5c(0x202)]>=0x7){let _0x3270fa=this[_0x79ca5c(0x1c0)](_0x4112de[0x1]),_0x19b290=this[_0x79ca5c(0x1c0)](_0x4112de[0x2]),_0x3b6213=this[_0x79ca5c(0x1c0)](_0x4112de[0x3]),_0x4b40b5=this[_0x79ca5c(0x1c0)](_0x4112de[0x4]),_0x3ca203=this['_parseIgesNumber'](_0x4112de[0x5]),_0x5ebea8=this['_parseIgesNumber'](_0x4112de[0x6]);_0x24a0cf[_0x79ca5c(0x1a7)]([[_0x3270fa,_0x19b290,_0x3b6213],[_0x4b40b5,_0x3ca203,_0x5ebea8]]);}},'_processNurbsCurveEntity':function(_0x50d178,_0x3ef779){const _0xa937e3=a0_0x2ad885;if(_0x50d178[_0xa937e3(0x202)]<0x7)return;let _0x1fe6e0=parseInt(_0x50d178[0x1]),_0x6e3d58=parseInt(_0x50d178[0x2]),_0x366bef=parseInt(_0x50d178[0x3]),_0x578b5a=parseInt(_0x50d178[0x4]),_0x601340=parseInt(_0x50d178[0x5]),_0x3bf250=parseInt(_0x50d178[0x6]),_0x133658=_0x1fe6e0+0x1,_0x1dc178=_0x1fe6e0+_0x6e3d58+0x2,_0x1e3b1e=0x7,_0x42affb=_0x1e3b1e+_0x1dc178,_0x1aa158=_0x42affb+_0x133658+_0x133658+_0x133658+_0x133658+0x2;if(_0x50d178['length']<_0x1aa158+0x3)return;let _0x3bd1be=[];for(let _0x1a4d8e=0x0;_0x1a4d8e<_0x1dc178;_0x1a4d8e++)_0x3bd1be[_0xa937e3(0x1a7)](this[_0xa937e3(0x1c0)](_0x50d178[_0x1e3b1e+_0x1a4d8e]));let _0x596d9e=[];for(let _0x294151=0x0;_0x294151<_0x133658;_0x294151++)_0x596d9e['push'](this['_parseIgesNumber'](_0x50d178[_0x42affb+_0x294151])||0x1);let _0x5a12ed=[],_0x3c9c4=_0x42affb+_0x133658,_0x58d5cc=_0x3c9c4+_0x133658*0x3;if(_0x50d178[_0xa937e3(0x202)]>=_0x58d5cc+0x5){for(let _0xb82a22=0x0;_0xb82a22<_0x133658;_0xb82a22++){let _0x4c2f2b=_0x3c9c4+_0xb82a22*0x3,_0x1a6e1d=this[_0xa937e3(0x1c0)](_0x50d178[_0x4c2f2b]),_0x46ad6a=this[_0xa937e3(0x1c0)](_0x50d178[_0x4c2f2b+0x1]),_0x290d8b=this[_0xa937e3(0x1c0)](_0x50d178[_0x4c2f2b+0x2]);_0x5a12ed[_0xa937e3(0x1a7)]([_0x1a6e1d,_0x46ad6a,_0x290d8b]);}let _0x134f44=_0x58d5cc,_0x34c565=_0x134f44+0x2,_0x59ccc3=this[_0xa937e3(0x1c0)](_0x50d178[_0x134f44]),_0x32a052=this[_0xa937e3(0x1c0)](_0x50d178[_0x134f44+0x1])||0x1,_0x2184ad=[this[_0xa937e3(0x1c0)](_0x50d178[_0x34c565]),this[_0xa937e3(0x1c0)](_0x50d178[_0x34c565+0x1]),this['_parseIgesNumber'](_0x50d178[_0x34c565+0x2])],_0x367fb2={'type':_0xa937e3(0x1a8),'degree':_0x6e3d58,'controlPoints':_0x5a12ed,'weights':_0x596d9e,'knots':_0x3bd1be,'parameterRange':[_0x59ccc3,_0x32a052],'properties':{'planar':_0x366bef===0x1,'closed':_0x578b5a===0x1,'rational':_0x601340===0x1,'periodic':_0x3bf250===0x1},'normalVector':_0x2184ad,'numControlPoints':_0x133658,'numKnots':_0x1dc178,'upperControlPointIndex':_0x1fe6e0};_0x3ef779['push'](_0x367fb2);}else{let _0x422bb6=_0x42affb+_0x133658,_0x6a33a7=_0x422bb6+_0x133658,_0x55d7df=_0x6a33a7+_0x133658,_0x3b7990=_0x55d7df+_0x133658,_0x4ecc58=_0x3b7990+0x2;if(_0x50d178[_0xa937e3(0x202)]<_0x4ecc58+0x3)return;for(let _0x4aab03=0x0;_0x4aab03<_0x133658;_0x4aab03++){let _0x3cbe2a=this[_0xa937e3(0x1c0)](_0x50d178[_0x422bb6+_0x4aab03]),_0x30a5e8=this['_parseIgesNumber'](_0x50d178[_0x6a33a7+_0x4aab03]),_0x2faf1c=this[_0xa937e3(0x1c0)](_0x50d178[_0x55d7df+_0x4aab03]);_0x5a12ed[_0xa937e3(0x1a7)]([_0x3cbe2a,_0x30a5e8,_0x2faf1c]);}let _0x240bd4=this[_0xa937e3(0x1c0)](_0x50d178[_0x3b7990]),_0x18199f=this[_0xa937e3(0x1c0)](_0x50d178[_0x3b7990+0x1])||0x1,_0x2319cb=[this[_0xa937e3(0x1c0)](_0x50d178[_0x4ecc58]),this[_0xa937e3(0x1c0)](_0x50d178[_0x4ecc58+0x1]),this[_0xa937e3(0x1c0)](_0x50d178[_0x4ecc58+0x2])],_0x3bddfe={'type':'nurbsCurve','degree':_0x6e3d58,'controlPoints':_0x5a12ed,'weights':_0x596d9e,'knots':_0x3bd1be,'parameterRange':[_0x240bd4,_0x18199f],'properties':{'planar':_0x366bef===0x1,'closed':_0x578b5a===0x1,'rational':_0x601340===0x1,'periodic':_0x3bf250===0x1},'normalVector':_0x2319cb,'numControlPoints':_0x133658,'numKnots':_0x1dc178,'upperControlPointIndex':_0x1fe6e0};_0x3ef779[_0xa937e3(0x1a7)](_0x3bddfe);}},'_processNurbsSurfaceEntity':function(_0x37eab4,_0x4cb889){const _0x590d5e=a0_0x2ad885;if(_0x37eab4['length']<0xa)return;let _0x111127=parseInt(_0x37eab4[0x1]),_0x5c433b=parseInt(_0x37eab4[0x2]),_0x46bd2f=parseInt(_0x37eab4[0x3]),_0x2eab26=parseInt(_0x37eab4[0x4]),_0x1c2634=parseInt(_0x37eab4[0x5]),_0x5d1b30=parseInt(_0x37eab4[0x6]),_0x3a0a1c=parseInt(_0x37eab4[0x7]),_0x4d9689=parseInt(_0x37eab4[0x8]),_0x4eada2=parseInt(_0x37eab4[0x9]),_0x40eb7d=_0x111127+0x1,_0x17832e=_0x5c433b+0x1,_0x9ffb02=_0x111127+_0x46bd2f+0x2,_0x5e9660=_0x5c433b+_0x2eab26+0x2,_0x4e133b=0xa,_0x1314e8=[];for(let _0x268b82=0x0;_0x268b82<_0x9ffb02;_0x268b82++)_0x1314e8[_0x590d5e(0x1a7)](this['_parseIgesNumber'](_0x37eab4[_0x4e133b++]));let _0x153e63=[];for(let _0x16de3f=0x0;_0x16de3f<_0x5e9660;_0x16de3f++)_0x153e63[_0x590d5e(0x1a7)](this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]));let _0x2ab09a={'type':_0x590d5e(0x200),'degreeU':_0x46bd2f,'degreeV':_0x2eab26,'controlPoints':[],'weights':[],'knotsU':_0x1314e8,'knotsV':_0x153e63,'properties':{'closedU':_0x1c2634===0x1,'closedV':_0x5d1b30===0x1,'rational':_0x3a0a1c===0x1,'periodicU':_0x4d9689===0x1,'periodicV':_0x4eada2===0x1}};for(let _0x49aa1a=0x0;_0x49aa1a<_0x40eb7d;_0x49aa1a++)_0x2ab09a[_0x590d5e(0x1e1)]['push'](new Array(_0x17832e)),_0x2ab09a[_0x590d5e(0x227)][_0x590d5e(0x1a7)](new Array(_0x17832e));for(let _0x3f29ee=0x0;_0x3f29ee<_0x17832e;_0x3f29ee++)for(let _0x194c13=0x0;_0x194c13<_0x40eb7d;_0x194c13++)_0x2ab09a['weights'][_0x194c13][_0x3f29ee]=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++])||0x1;for(let _0x2e3a0c=0x0;_0x2e3a0c<_0x17832e;_0x2e3a0c++)for(let _0x55a92b=0x0;_0x55a92b<_0x40eb7d;_0x55a92b++){let _0xf971d7=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]),_0x12c873=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]),_0x3f08c2=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]);_0x2ab09a[_0x590d5e(0x227)][_0x55a92b][_0x2e3a0c]=[_0xf971d7,_0x12c873,_0x3f08c2];}if(_0x4e133b+0x4<=_0x37eab4['length']){let _0xe1c9ba=this['_parseIgesNumber'](_0x37eab4[_0x4e133b++]),_0x42023a=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]),_0x2a3d5c=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]),_0x21d76c=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]);_0x2ab09a['parameterRangeU']=[_0xe1c9ba,_0x42023a],_0x2ab09a[_0x590d5e(0x213)]=[_0x2a3d5c,_0x21d76c];}_0x4cb889[_0x590d5e(0x1a7)](_0x2ab09a);},'igesToGeometry':function(_0x10b9ce){const _0x1d8178=a0_0x2ad885;if(!_0x10b9ce||typeof _0x10b9ce!='string')throw new Error('IGES\x20content\x20must\x20be\x20a\x20non-empty\x20string');let _0x509d3c=[],_0x1c9e4f=[],_0x166e7d=[],_0x243624=[],_0x1949ca=_0x10b9ce[_0x1d8178(0x1af)]('\x0a')[_0x1d8178(0x1b9)](_0x2436b4=>_0x2436b4[_0x1d8178(0x1cd)]()&&_0x2436b4[_0x1d8178(0x1d9)](0x48)==='P'),_0x34ee38='';for(let _0x298772 of _0x1949ca){let _0x3b4332=_0x298772['substring'](0x0,0x40)[_0x1d8178(0x1cd)]();_0x34ee38+=_0x3b4332,_0x3b4332['endsWith'](';')&&(this['_processEntity'](_0x34ee38,_0x509d3c,_0x1c9e4f,_0x166e7d,_0x243624),_0x34ee38='');}return{'lines':_0x509d3c,'points':_0x1c9e4f,'nurbsCurves':_0x166e7d,'nurbsSurfaces':_0x243624};}},H={'polylinePlaneIntersections3D':function(_0x5af17b,_0x390350){const _0x25b5a2=a0_0x2ad885;let _0x4d35d9=[];for(let _0x5d4806=0x0;_0x5d4806<_0x5af17b['length']-0x1;_0x5d4806++){let _0x75deca=_0x5af17b[_0x5d4806],_0x34a01c=_0x5af17b[_0x5d4806+0x1],_0x160b60=[_0x34a01c[0x0]-_0x75deca[0x0],_0x34a01c[0x1]-_0x75deca[0x1],_0x34a01c[0x2]-_0x75deca[0x2]],_0x35ecf7={'origin':_0x75deca,'dir':_0x160b60},_0x3f910f=this[_0x25b5a2(0x209)](_0x35ecf7,_0x390350);if(_0x3f910f){let _0x44bf28=_0x160b60[0x0]!==0x0?(_0x3f910f[0x0]-_0x75deca[0x0])/_0x160b60[0x0]:_0x160b60[0x1]!==0x0?(_0x3f910f[0x1]-_0x75deca[0x1])/_0x160b60[0x1]:_0x160b60[0x2]!==0x0?(_0x3f910f[0x2]-_0x75deca[0x2])/_0x160b60[0x2]:0x0;_0x44bf28>=0x0&&_0x44bf28<=0x1&&(_0x4d35d9[_0x25b5a2(0x1f9)](_0x17fc24=>{let _0x323e94=_0x17fc24[0x0]-_0x3f910f[0x0],_0x39a4fd=_0x17fc24[0x1]-_0x3f910f[0x1],_0x33fb47=_0x17fc24[0x2]-_0x3f910f[0x2];return Math['sqrt'](_0x323e94*_0x323e94+_0x39a4fd*_0x39a4fd+_0x33fb47*_0x33fb47)<1e-10;})||_0x4d35d9['push'](_0x3f910f));}}return _0x4d35d9;},'rayPlaneIntersection3D':function(_0x2bab27,_0x2ef641){const _0x184fce=a0_0x2ad885;let _0x250e87=_0x2bab27[_0x184fce(0x1c3)],_0x4cdb04=_0x2bab27[_0x184fce(0x204)],_0x21cdc7=_0x2ef641[_0x184fce(0x197)],_0x4430fb=_0x2ef641['normal'],_0x3e7795=_0x4cdb04[0x0]*_0x4430fb[0x0]+_0x4cdb04[0x1]*_0x4430fb[0x1]+_0x4cdb04[0x2]*_0x4430fb[0x2];if(Math[_0x184fce(0x20b)](_0x3e7795)<1e-10)return null;let _0xac250a=((_0x21cdc7[0x0]-_0x250e87[0x0])*_0x4430fb[0x0]+(_0x21cdc7[0x1]-_0x250e87[0x1])*_0x4430fb[0x1]+(_0x21cdc7[0x2]-_0x250e87[0x2])*_0x4430fb[0x2])/_0x3e7795;return _0xac250a<0x0?null:[_0x250e87[0x0]+_0xac250a*_0x4cdb04[0x0],_0x250e87[0x1]+_0xac250a*_0x4cdb04[0x1],_0x250e87[0x2]+_0xac250a*_0x4cdb04[0x2]];},'polylineIntersections3D':function(_0x485d54,_0x2764b1,_0x32d0d1=0.000001){const _0x401176=a0_0x2ad885;function _0x20529f(_0x3483ec,_0x48674e,_0x4f6648,_0x13339a){const _0x4d9324=a0_0x2f9e;let _0x2eccc0=[_0x48674e[0x0]-_0x3483ec[0x0],_0x48674e[0x1]-_0x3483ec[0x1],_0x48674e[0x2]-_0x3483ec[0x2]],_0x11a63a=[_0x13339a[0x0]-_0x4f6648[0x0],_0x13339a[0x1]-_0x4f6648[0x1],_0x13339a[0x2]-_0x4f6648[0x2]],_0x3f647f=[_0x3483ec[0x0]-_0x4f6648[0x0],_0x3483ec[0x1]-_0x4f6648[0x1],_0x3483ec[0x2]-_0x4f6648[0x2]],_0x3d9035=_0x4862bd(_0x2eccc0,_0x2eccc0),_0x4018ed=_0x4862bd(_0x2eccc0,_0x11a63a),_0x20c294=_0x4862bd(_0x11a63a,_0x11a63a),_0x1acd2d=_0x4862bd(_0x2eccc0,_0x3f647f),_0x4b0b50=_0x4862bd(_0x11a63a,_0x3f647f),_0x1f6e02=_0x3d9035*_0x20c294-_0x4018ed*_0x4018ed,_0x5bbc24,_0x2a17fb;_0x1f6e02===0x0?(_0x5bbc24=0x0,_0x2a17fb=_0x4018ed>_0x20c294?_0x1acd2d/_0x4018ed:_0x4b0b50/_0x20c294):(_0x5bbc24=(_0x4018ed*_0x4b0b50-_0x20c294*_0x1acd2d)/_0x1f6e02,_0x2a17fb=(_0x3d9035*_0x4b0b50-_0x4018ed*_0x1acd2d)/_0x1f6e02),_0x5bbc24=Math[_0x4d9324(0x191)](0x0,Math[_0x4d9324(0x210)](0x1,_0x5bbc24)),_0x2a17fb=Math[_0x4d9324(0x191)](0x0,Math[_0x4d9324(0x210)](0x1,_0x2a17fb));let _0x277390=[_0x3483ec[0x0]+_0x5bbc24*_0x2eccc0[0x0],_0x3483ec[0x1]+_0x5bbc24*_0x2eccc0[0x1],_0x3483ec[0x2]+_0x5bbc24*_0x2eccc0[0x2]],_0x3c0fbd=[_0x4f6648[0x0]+_0x2a17fb*_0x11a63a[0x0],_0x4f6648[0x1]+_0x2a17fb*_0x11a63a[0x1],_0x4f6648[0x2]+_0x2a17fb*_0x11a63a[0x2]];return{'pt1':_0x277390,'pt2':_0x3c0fbd,'distance':Math['sqrt']((_0x277390[0x0]-_0x3c0fbd[0x0])**0x2+(_0x277390[0x1]-_0x3c0fbd[0x1])**0x2+(_0x277390[0x2]-_0x3c0fbd[0x2])**0x2)};}function _0x4862bd(_0x53bd4a,_0x2c6e02){return _0x53bd4a[0x0]*_0x2c6e02[0x0]+_0x53bd4a[0x1]*_0x2c6e02[0x1]+_0x53bd4a[0x2]*_0x2c6e02[0x2];}let _0x21599e=[];for(let _0x52673f=0x0;_0x52673f<_0x485d54[_0x401176(0x202)]-0x1;_0x52673f++)for(let _0x5c3af4=0x0;_0x5c3af4<_0x2764b1[_0x401176(0x202)]-0x1;_0x5c3af4++){let {pt1:_0x960a4f,pt2:_0x4b86c0,distance:_0x223a2f}=_0x20529f(_0x485d54[_0x52673f],_0x485d54[_0x52673f+0x1],_0x2764b1[_0x5c3af4],_0x2764b1[_0x5c3af4+0x1]);_0x223a2f<_0x32d0d1&&_0x21599e[_0x401176(0x1a7)]({'point':[(_0x960a4f[0x0]+_0x4b86c0[0x0])/0x2,(_0x960a4f[0x1]+_0x4b86c0[0x1])/0x2,(_0x960a4f[0x2]+_0x4b86c0[0x2])/0x2],'seg1':_0x52673f,'seg2':_0x5c3af4,'distance':_0x223a2f});}return _0x21599e;}},G={'projectTo2d':function(_0x43e485){const _0x118f1c=a0_0x2ad885;let _0x2aa485=[..._0x43e485];if(_0x2aa485[_0x118f1c(0x202)]<0x3)throw new Error(_0x118f1c(0x1ee));let _0x3b4c31=_0x2aa485[0x0],_0x361d1f=null,_0x56e684=null,_0x2c004a=1e-10;for(let _0x1306c6=0x1;_0x1306c6<_0x2aa485['length'];_0x1306c6++){let _0x23dfc6=b[_0x118f1c(0x1c9)](_0x3b4c31,_0x2aa485[_0x1306c6]);if(b[_0x118f1c(0x202)](_0x23dfc6)>_0x2c004a){_0x361d1f=_0x2aa485[_0x1306c6],_0x56e684=_0x23dfc6;break;}}if(!_0x56e684)throw new Error(_0x118f1c(0x225));let _0x6df7ad=null;for(let _0x15b677=0x1;_0x15b677<_0x2aa485[_0x118f1c(0x202)];_0x15b677++){if(_0x2aa485[_0x15b677]===_0x361d1f)continue;let _0x44b428=b[_0x118f1c(0x1c9)](_0x3b4c31,_0x2aa485[_0x15b677]),_0x31cab2=b[_0x118f1c(0x228)](_0x56e684,_0x44b428);if(b['length'](_0x31cab2)>_0x2c004a){_0x6df7ad=_0x31cab2;break;}}if(!_0x6df7ad)throw new Error('Degenerate\x20polygon:\x20all\x20points\x20are\x20collinear');let _0x1233b4=b['normalized'](_0x6df7ad),_0xc412b7=b[_0x118f1c(0x1d3)](_0x56e684),_0x182057=b['cross'](_0x1233b4,_0xc412b7),_0x446919=b[_0x118f1c(0x1d3)](_0x182057);return _0x2aa485[_0x118f1c(0x1d6)](_0x3df02f=>{const _0x2f67d4=_0x118f1c;let _0x1471b4=b[_0x2f67d4(0x1c9)](_0x3b4c31,_0x3df02f);return[b['dot'](_0x1471b4,_0xc412b7),b['dot'](_0x1471b4,_0x446919)];});},'projectedAreas':function(_0x664ec4){const _0xeca99e=a0_0x2ad885;let _0x517361=[..._0x664ec4];if(_0x517361['length']<0x3)throw new Error(_0xeca99e(0x1ee));let _0x25c134=_0x517361[_0xeca99e(0x202)],_0x453c57=0x0;for(let _0x3e277d=0x0;_0x3e277d<_0x25c134;_0x3e277d++){let [_0x4c05cc,_0x2b5649]=_0x517361[_0x3e277d],[_0x3fec07,_0x23c71b]=_0x517361[(_0x3e277d+0x1)%_0x25c134];_0x453c57+=_0x4c05cc*_0x23c71b-_0x3fec07*_0x2b5649;}_0x453c57=Math['abs'](_0x453c57)*0.5;let _0xe2dfd5=0x0;for(let _0x43c0e3=0x0;_0x43c0e3<_0x25c134;_0x43c0e3++){let [_0x27ad1f,,_0x585e72]=_0x517361[_0x43c0e3],[_0x16b7ce,,_0x4709c0]=_0x517361[(_0x43c0e3+0x1)%_0x25c134];_0xe2dfd5+=_0x27ad1f*_0x4709c0-_0x16b7ce*_0x585e72;}_0xe2dfd5=Math[_0xeca99e(0x20b)](_0xe2dfd5)*0.5;let _0x582b73=0x0;for(let _0x7e65fb=0x0;_0x7e65fb<_0x25c134;_0x7e65fb++){let [,_0x5b2753,_0x3febb2]=_0x517361[_0x7e65fb],[,_0x3b648a,_0x33b421]=_0x517361[(_0x7e65fb+0x1)%_0x25c134];_0x582b73+=_0x5b2753*_0x33b421-_0x3b648a*_0x3febb2;}return _0x582b73=Math[_0xeca99e(0x20b)](_0x582b73)*0.5,{'xy':_0x453c57,'xz':_0xe2dfd5,'yz':_0x582b73};}};function a0_0x2f9e(_0x3796f2,_0x322883){const _0x11cd10=a0_0x11cd();return a0_0x2f9e=function(_0x2f9e83,_0x34174c){_0x2f9e83=_0x2f9e83-0x191;let _0x7c734a=_0x11cd10[_0x2f9e83];return _0x7c734a;},a0_0x2f9e(_0x3796f2,_0x322883);}if(new Date()[a0_0x2ad885(0x1a0)]()>0x7ea)throw new Error('');export{O as Bspline3d,A as Cspline3d,K as Iges,H as Intersection3d,T as Matrix,k as Point3d,G as Polygon3d,V as Polyline3D,v as Utils,b as Vector3d};function a0_0x11cd(){const _0x1d294e=['bspline','toString','Skipping\x20NURBS\x20curve:\x20need\x20at\x20least\x20','padStart','join','js3d\x201.0','acos','findPointAtParameter','getFullYear','No\x20valid\x20geometries\x20found\x20to\x20convert','Auto-generation\x20of\x20knot\x20vectors\x20not\x20fully\x20implemented.\x20Please\x20provide\x20knotsU\x20and\x20knotsV.','degreeV','toFixed','_processNurbsCurveEntity','warn','push','nurbsCurve','out\x20of\x20bounds','1000.0','segmentLengths','sub','128,','units','split','sin','swapRows','lastIndexOf','cos','126,','floor','isInteger','_createPointEntity','knotsU','filter','padEnd','multiplyTranspose','knots','POSITIVE_INFINITY','dot','_formatSection','_parseIgesNumber','isArray','substring','origin','18hWcSrw','data','NURBS\x20surface\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','sqrt','knotsV','fromTwoPoints','116,','vectorMultiplyTranspose','substr','trim','log','slice','Unknown\x20geometry\x20type:\x20','_createNurbsSurfaceEntity',',\x20got\x20','normalized','_basis_function','_chord_length_parameterization','map','degree\x20must\x20be\x20at\x20least\x201\x20(linear)','pow','charAt','START','findParameterAtPoint','getNaturalKs','_createNurbsCurveEntity','Combined\x20geometry\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','fill','forEach','weights','Insufficient\x20control\x20points\x20for\x20specified\x20degrees','uniform_knot_spacing','Invalid\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','1977080pyTArH','toISOString','scalarProduct','zerosMat','string','165997KjbSbU','_formatDirectoryLine','filename','_formatTerminateSection','Need\x20at\x20least\x203\x20points\x20for\x20a\x20polygon','degreeU','Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length','author','object','27580ATYYIe','Geometries\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','cumulativeLength','235192ZSPAsC','Knots\x20U\x20and\x20V\x20are\x20required\x20for\x20NURBS\x20surface','resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201','some','106,','points','_processPolylineEntity','1H;','parameterEntry','_gaussJ','nurbsSurface','linspace','length','_toHollerith','dir','680631BPIiYq','js3d','degree','organization','rayPlaneIntersection3D','toUpperCase','abs','lineCount','replace','308','totalLength','min','_formatParameterLine','1.0','parameterRangeV','E$1',',0.0,0.0,0.0','type',',0,0,1,0,0','round','add','24NfwGlc','Control\x20points\x202D\x20array\x20is\x20required','from','NEGATIVE_INFINITY','.\x20Supported\x20types:\x20points,\x20polyline,\x20nurbsCurve,\x20nurbsSurface','390830FdYHbl','0.0001','_createPolylineEntity','solveLinearSystem','move','_formatNumber','Degenerate\x20polygon:\x20all\x20points\x20are\x20coincident','_generateGlobalSection','controlPoints','cross','Generated\x20by\x20js3d\x20IGES\x20converter\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x201','max','544743csuENR','Need\x20at\x20least\x202\x20points\x20to\x20approximate','directoryEntry','bad\x20knot\x20vector\x20length','_processPointEntity','point'];a0_0x11cd=function(){return _0x1d294e;};return a0_0x11cd();}
1
+ const a0_0x3aa890=a0_0x15a7;function a0_0x15a7(_0x279c87,_0x65cb83){const _0xfc340e=a0_0xfc34();return a0_0x15a7=function(_0x15a7a1,_0x17f887){_0x15a7a1=_0x15a7a1-0x173;let _0x2b3230=_0xfc340e[_0x15a7a1];return _0x2b3230;},a0_0x15a7(_0x279c87,_0x65cb83);}function a0_0xfc34(){const _0xa6729=['map','floor','_processNurbsSurfaceEntity','_chord_length_parameterization','geometry.iges','plane','units','debug','add','fromTwoPoints','NEGATIVE_INFINITY','forEach','dot','6CGsdOP','padStart','Need\x20at\x20least\x203\x20points\x20for\x20a\x20polygon','nurbs','segmentLengths','_processNurbsCurveEntity','_createPointEntity','max','_formatParameterLine','No\x20valid\x20geometries\x20found\x20to\x20convert','_parseIgesNumber','Control\x20points\x202D\x20array\x20is\x20required','nurbsCurve','1000.0','116,','split','_formatDirectoryLine','fill','_uniform_knot_vector','toString','rayPlaneIntersection3D','1885122cPdLpf',',0.0;','cross','totalLength','parameterRangeV','Degenerate\x20polygon:\x20all\x20points\x20are\x20coincident','cos','padEnd','chordLength','_formatNumber','_formatTerminateSection','degree\x20must\x20be\x20at\x20least\x201\x20(linear)','insert_knot','bad\x20knot\x20vector\x20length','length','126,','findPointAtParameter','_formatSection','move','swapRows','Need\x20at\x20least\x202\x20points\x20to\x20approximate','uniform_knot_spacing','toFixed','Skipping\x20NURBS\x20curve:\x20need\x20at\x20least\x20','angle',',0,0,1,0','push','106,','parameterRangeU','_processEntity','toISOString','NURBS\x20surface\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','from','_approximate_knot_vector','solveLinearSystem','filter','pow','Invalid\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','sin','_createPolylineEntity','filename','getNaturalKs','slice','degreeV','_toHollerith','POSITIVE_INFINITY','directoryEntry','out\x20of\x20bounds','_centripetal_parameterization','getFullYear','128,','Invalid\x20control\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','knotsU','_gaussJ','linspace','_resample_to_uniform_arc_length','lineCount','Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length','IGES\x20content\x20must\x20be\x20a\x20non-empty\x20string','author',',\x20got\x20','1.0','_createNurbsSurfaceEntity','dir','Combined\x20geometry\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202',',0.0,0.0,0.0','points','14432877UfOCPU','knotsV','multiplyTranspose','organization','isInteger','string','Invalid\x20geometry\x20object.\x20Expected\x20{\x20type:\x20\x22points|polyline|nurbsCurve|nurbsSurface\x22,\x20data:\x20[...]\x20}','create_arc','data','\x20control\x20points\x20for\x20degree\x20','cumulativeLength','object','458855SshoMJ','abs','degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201','sqrt','_uniform_parameterization','Geometries\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','nurbsSurface','replace','degree','E$1','uniform_knot_vector','1H,','_processPolylineEntity','zerosMat','warn','normalized','sub','acos','round','some','origin','1278616uCbjjn','3773052tdmzAN','308','parameterEntry','findParameterAtPoint','centripetal','4dXzcsR','type','0.0001','knots','vectorMultiplyTranspose','721611UDIgdH','min','normalizedCosineSpacing','scalarProduct','ceil','toExponential','_basis_function','endsWith','1621809eplmCr','bspline','isArray','degreeU','join','substr','_processLineEntity','START','_generateGlobalSection','LiftLab','Insufficient\x20control\x20points\x20for\x20specified\x20degrees','trim','weights','controlPoints',',0,0,1,0,0','resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201','Generated\x20by\x20js3d\x20IGES\x20converter\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x201'];a0_0xfc34=function(){return _0xa6729;};return a0_0xfc34();}(function(_0x37257c,_0x36b121){const _0x552eef=a0_0x15a7,_0x2241fb=_0x37257c();while(!![]){try{const _0x2ab5f3=-parseInt(_0x552eef(0x18f))/0x1+parseInt(_0x552eef(0x18a))/0x2*(-parseInt(_0x552eef(0x1ca))/0x3)+parseInt(_0x552eef(0x185))/0x4+parseInt(_0x552eef(0x219))/0x5*(-parseInt(_0x552eef(0x1b5))/0x6)+parseInt(_0x552eef(0x197))/0x7+parseInt(_0x552eef(0x184))/0x8+parseInt(_0x552eef(0x20d))/0x9;if(_0x2ab5f3===_0x36b121)break;else _0x2241fb['push'](_0x2241fb['shift']());}catch(_0x3fdaa0){_0x2241fb['push'](_0x2241fb['shift']());}}}(a0_0xfc34,0xd3fcc));var w={'length':function(_0x310856){const _0x20b331=a0_0x15a7;return Math[_0x20b331(0x21c)](_0x310856[0x0]**0x2+_0x310856[0x1]**0x2+_0x310856[0x2]**0x2);},'scalarProduct':function(_0x32ad2d,_0x18e807){return[_0x32ad2d[0x0]*_0x18e807,_0x32ad2d[0x1]*_0x18e807,_0x32ad2d[0x2]*_0x18e807];},'dot':function(_0x3e9ffc,_0x4e9212){return _0x3e9ffc[0x0]*_0x4e9212[0x0]+_0x3e9ffc[0x1]*_0x4e9212[0x1]+_0x3e9ffc[0x2]*_0x4e9212[0x2];},'angle':function(_0x520581,_0x3f12a6,_0x513899=!0x1){const _0x2f611e=a0_0x15a7;let _0x52e2bd=this['dot'](_0x520581,_0x3f12a6)/(this[_0x2f611e(0x1d8)](_0x520581)*this[_0x2f611e(0x1d8)](_0x3f12a6)),_0x5b0517=Math[_0x2f611e(0x180)](_0x52e2bd);return _0x513899&&_0x5b0517>Math['PI']/0x2&&(_0x5b0517=Math['PI']-_0x5b0517),_0x5b0517;},'signedAngle':function(_0x323d33,_0x2358f1,_0x324642){const _0x1ea033=a0_0x15a7;let _0x2ac33c=this[_0x1ea033(0x1e2)](_0x323d33,_0x2358f1),_0x3db6dc=this[_0x1ea033(0x1cc)](_0x323d33,_0x2358f1);return(this[_0x1ea033(0x1b4)](_0x3db6dc,_0x324642)>=0x0?0x1:-0x1)*_0x2ac33c;},'sub':function(_0x40380b,_0x3c21e8){return[_0x40380b[0x0]-_0x3c21e8[0x0],_0x40380b[0x1]-_0x3c21e8[0x1],_0x40380b[0x2]-_0x3c21e8[0x2]];},'add':function(_0x4e9dcf,_0x38c39b){return[_0x4e9dcf[0x0]+_0x38c39b[0x0],_0x4e9dcf[0x1]+_0x38c39b[0x1],_0x4e9dcf[0x2]+_0x38c39b[0x2]];},'rotate':function(_0x434a34,_0x406e66,_0x511ea3){const _0x24056b=a0_0x15a7;let _0x5f096d=_0x511ea3*Math['PI']/0xb4,_0xe2c7c2=Math[_0x24056b(0x1d0)](_0x5f096d),_0x3fb024=Math[_0x24056b(0x1f0)](_0x5f096d),_0xfe427c=_0x434a34[0x0],_0x3c10fc=_0x434a34[0x1],_0x57c123=_0x434a34[0x2],_0x401c57=_0x406e66[0x0],_0x120b79=_0x406e66[0x1],_0x10601d=_0x406e66[0x2],_0x51586f=_0x401c57*_0xfe427c+_0x120b79*_0x3c10fc+_0x10601d*_0x57c123,_0x6ea21=_0x401c57*_0x51586f*(0x1-_0xe2c7c2)+_0xfe427c*_0xe2c7c2+(-_0x10601d*_0x3c10fc+_0x120b79*_0x57c123)*_0x3fb024,_0x33fe6d=_0x120b79*_0x51586f*(0x1-_0xe2c7c2)+_0x3c10fc*_0xe2c7c2+(_0x10601d*_0xfe427c-_0x401c57*_0x57c123)*_0x3fb024,_0x41810d=_0x10601d*_0x51586f*(0x1-_0xe2c7c2)+_0x57c123*_0xe2c7c2+(-_0x120b79*_0xfe427c+_0x401c57*_0x3c10fc)*_0x3fb024;return[_0x6ea21,_0x33fe6d,_0x41810d];},'fromTwoPoints':function(_0x251c2b,_0x36af7b){return[_0x36af7b[0x0]-_0x251c2b[0x0],_0x36af7b[0x1]-_0x251c2b[0x1],_0x36af7b[0x2]-_0x251c2b[0x2]];},'normalized':function(_0x205844){const _0x196565=a0_0x15a7;return w[_0x196565(0x192)](_0x205844,0x1/w[_0x196565(0x1d8)](_0x205844));},'cross':function(_0x358647,_0x276a85){return[_0x358647[0x1]*_0x276a85[0x2]-_0x358647[0x2]*_0x276a85[0x1],_0x358647[0x2]*_0x276a85[0x0]-_0x358647[0x0]*_0x276a85[0x2],_0x358647[0x0]*_0x276a85[0x1]-_0x358647[0x1]*_0x276a85[0x0]];},'project':function(_0x922f0b,_0x113b25){const _0x394f02=a0_0x15a7;let _0x1b1c31=this[_0x394f02(0x17e)](_0x113b25),_0x2e942f=this['dot'](_0x922f0b,_0x1b1c31);return this[_0x394f02(0x17f)](_0x922f0b,this['scalarProduct'](_0x1b1c31,_0x2e942f));}},U={'distance':function(_0x379289,_0x32308f){const _0x23372a=a0_0x15a7;return w[_0x23372a(0x1d8)](w[_0x23372a(0x17f)](_0x32308f,_0x379289));},'move':function(_0x222457,_0x4d6b26){const _0x4ba849=a0_0x15a7;return w[_0x4ba849(0x1b0)](_0x222457,_0x4d6b26);},'scale':function(_0xe5be09,_0x527c94,_0x3f08b1){const _0x581e14=a0_0x15a7;return _0x3f08b1!=null&&(_0xe5be09=this[_0x581e14(0x1dc)](_0xe5be09,w[_0x581e14(0x192)](_0x3f08b1,-0x1))),_0xe5be09=w[_0x581e14(0x192)](_0xe5be09,_0x527c94),_0x3f08b1!=null&&(_0xe5be09=this['move'](_0xe5be09,_0x3f08b1)),_0xe5be09;},'rotate':function(_0x512863,_0x1aca26,_0x49960e,_0x16dec3){const _0x112a6d=a0_0x15a7;let _0x1ab6ef=_0x49960e*Math['PI']/0xb4,_0x2ecb2d=Math[_0x112a6d(0x1d0)](_0x1ab6ef),_0x32e487=Math[_0x112a6d(0x1f0)](_0x1ab6ef),_0x436cfd=_0x512863[0x0],_0x44e9d7=_0x512863[0x1],_0x17a671=_0x512863[0x2];_0x16dec3!=null&&(_0x436cfd=_0x436cfd-_0x16dec3[0x0],_0x44e9d7=_0x44e9d7-_0x16dec3[0x1],_0x17a671=_0x17a671-_0x16dec3[0x2]);let _0x8a181=_0x1aca26[0x0],_0x2b3110=_0x1aca26[0x1],_0x40057a=_0x1aca26[0x2],_0x56aa7d=_0x8a181*_0x436cfd+_0x2b3110*_0x44e9d7+_0x40057a*_0x17a671,_0x448008=_0x8a181*_0x56aa7d*(0x1-_0x2ecb2d)+_0x436cfd*_0x2ecb2d+(-_0x40057a*_0x44e9d7+_0x2b3110*_0x17a671)*_0x32e487,_0x8cff9a=_0x2b3110*_0x56aa7d*(0x1-_0x2ecb2d)+_0x44e9d7*_0x2ecb2d+(_0x40057a*_0x436cfd-_0x8a181*_0x17a671)*_0x32e487,_0x527a3c=_0x40057a*_0x56aa7d*(0x1-_0x2ecb2d)+_0x17a671*_0x2ecb2d+(-_0x2b3110*_0x436cfd+_0x8a181*_0x44e9d7)*_0x32e487,_0x1cb201=[_0x448008,_0x8cff9a,_0x527a3c];return _0x16dec3!=null&&(_0x1cb201[0x0]=_0x1cb201[0x0]+_0x16dec3[0x0],_0x1cb201[0x1]=_0x1cb201[0x1]+_0x16dec3[0x1],_0x1cb201[0x2]=_0x1cb201[0x2]+_0x16dec3[0x2]),_0x1cb201;},'project':function(_0x237d64,_0x5ba177,_0x2e96ab){const _0x8f4d7f=a0_0x15a7;let _0x2f7960=w[_0x8f4d7f(0x17f)](_0x237d64,_0x2e96ab),_0x1ea934=w[_0x8f4d7f(0x1b4)](_0x2f7960,_0x5ba177)/w[_0x8f4d7f(0x1d8)](_0x5ba177),_0x8b77a2=w[_0x8f4d7f(0x192)](_0x5ba177,0x1/w[_0x8f4d7f(0x1d8)](_0x5ba177));return w['sub'](_0x237d64,w['scalarProduct'](_0x8b77a2,_0x1ea934));},'mirror':function(_0x1ef00d,_0xce92bc,_0x19d043=[0x0,0x0,0x0]){const _0x1fcb07=a0_0x15a7;let _0x50a2e0=w[_0x1fcb07(0x17f)](_0x1ef00d,_0x19d043),_0x4173f8=w[_0x1fcb07(0x1d8)](_0xce92bc),_0x1ce26d=w[_0x1fcb07(0x1b4)](_0x50a2e0,_0xce92bc)/_0x4173f8,_0x1a82ea=w[_0x1fcb07(0x192)](_0xce92bc,0x1/_0x4173f8);return w['sub'](_0x1ef00d,w[_0x1fcb07(0x192)](_0x1a82ea,0x2*_0x1ce26d));}},L={'linspace':function(_0xb5f8d5,_0xc76be2,_0x4f785e,_0x4117e2=!0x0){const _0x85f4a0=a0_0x15a7;let _0x3559c6=_0x4117e2?_0x4f785e-0x1:_0x4f785e,_0x138f82=(_0xc76be2-_0xb5f8d5)/_0x3559c6;return Array[_0x85f4a0(0x1ea)]({'length':_0x4f785e},(_0x5a6cea,_0x5ceaf1)=>_0xb5f8d5+_0x138f82*_0x5ceaf1);},'cosineSpacing':function(_0x516ffb,_0x3895ba,_0xbf3f6c){const _0x46f3e1=a0_0x15a7;let _0x8f3220=Array['from']({'length':_0xbf3f6c},(_0x33f9fb,_0x4cc4b9)=>_0x4cc4b9/(_0xbf3f6c-0x1))[_0x46f3e1(0x1a8)](_0x3adc0f=>(0x1-Math[_0x46f3e1(0x1d0)](_0x3adc0f*Math['PI']))/0x2),_0x5918a4=[];for(let _0x92f949=0x0;_0x92f949<_0x8f3220[_0x46f3e1(0x1d8)];_0x92f949++){let _0x3b1da8=_0x8f3220[_0x92f949];_0x5918a4[_0x46f3e1(0x1e4)](mapToSpace(_0x3b1da8,[0x0,0x1],[_0x516ffb,_0x3895ba]));}return _0x5918a4;},'normalizedCosineSpacing':function(_0x4dca01){const _0x2207e0=a0_0x15a7;return Array[_0x2207e0(0x1ea)]({'length':_0x4dca01},(_0x56f70b,_0x3124d6)=>_0x3124d6/(_0x4dca01-0x1))[_0x2207e0(0x1a8)](_0x300efc=>(0x1-Math[_0x2207e0(0x1d0)](_0x300efc*Math['PI']))/0x2);},'mapToSpace':function(_0x19f960,_0x26220f,_0x1795c8){return _0x1795c8[0x1]+(_0x19f960-_0x26220f[0x1])*(_0x1795c8[0x0]-_0x1795c8[0x1])/(_0x26220f[0x0]-_0x26220f[0x1]);},'solveLinearSystem':function(_0x3537f6,_0x37fda3){const _0x194c65=a0_0x15a7;let _0x21748b=_0x3537f6[_0x194c65(0x1d8)],_0x4f787a=[];for(let _0x1e27cb=0x0;_0x1e27cb<_0x21748b;_0x1e27cb++)_0x4f787a[_0x1e27cb]=_0x3537f6[_0x1e27cb][_0x194c65(0x1f4)](),_0x4f787a[_0x1e27cb][_0x194c65(0x1e4)](_0x37fda3[_0x1e27cb]);for(let _0x26ffba=0x0;_0x26ffba<_0x21748b;_0x26ffba++){let _0x535748=_0x26ffba;for(let _0x90fee1=_0x26ffba+0x1;_0x90fee1<_0x21748b;_0x90fee1++)Math[_0x194c65(0x21a)](_0x4f787a[_0x90fee1][_0x26ffba])>Math[_0x194c65(0x21a)](_0x4f787a[_0x535748][_0x26ffba])&&(_0x535748=_0x90fee1);[_0x4f787a[_0x26ffba],_0x4f787a[_0x535748]]=[_0x4f787a[_0x535748],_0x4f787a[_0x26ffba]];for(let _0x5a7bbf=_0x26ffba+0x1;_0x5a7bbf<_0x21748b;_0x5a7bbf++){let _0x3d7375=_0x4f787a[_0x5a7bbf][_0x26ffba]/_0x4f787a[_0x26ffba][_0x26ffba];for(let _0x25bb74=_0x26ffba;_0x25bb74<=_0x21748b;_0x25bb74++)_0x4f787a[_0x5a7bbf][_0x25bb74]-=_0x3d7375*_0x4f787a[_0x26ffba][_0x25bb74];}}let _0x27e9c4=new Array(_0x21748b);for(let _0x2c75e1=_0x21748b-0x1;_0x2c75e1>=0x0;_0x2c75e1--){_0x27e9c4[_0x2c75e1]=_0x4f787a[_0x2c75e1][_0x21748b];for(let _0x3e3d40=_0x2c75e1+0x1;_0x3e3d40<_0x21748b;_0x3e3d40++)_0x27e9c4[_0x2c75e1]-=_0x4f787a[_0x2c75e1][_0x3e3d40]*_0x27e9c4[_0x3e3d40];_0x27e9c4[_0x2c75e1]/=_0x4f787a[_0x2c75e1][_0x2c75e1];}return _0x27e9c4;},'equalWithPrecision':function(_0x19ca39,_0x12b315,_0x1ce4ae=0x6){const _0x4ace20=a0_0x15a7;let _0x2563c8=Math[_0x4ace20(0x1ee)](0xa,_0x1ce4ae);return Math[_0x4ace20(0x181)](_0x19ca39*_0x2563c8)===Math[_0x4ace20(0x181)](_0x12b315*_0x2563c8);}},$={'multiplyTranspose':function(_0x286272,_0x17daae){const _0x2da352=a0_0x15a7;let _0x446294=_0x286272[0x0][_0x2da352(0x1d8)],_0x3ab5af=_0x17daae[0x0][_0x2da352(0x1d8)],_0xc3e551=[];for(let _0x411acc=0x0;_0x411acc<_0x446294;_0x411acc++){_0xc3e551[_0x411acc]=[];for(let _0x48411a=0x0;_0x48411a<_0x3ab5af;_0x48411a++){let _0x25d679=0x0;for(let _0x32b187=0x0;_0x32b187<_0x286272['length'];_0x32b187++)_0x25d679+=_0x286272[_0x32b187][_0x411acc]*_0x17daae[_0x32b187][_0x48411a];_0xc3e551[_0x411acc][_0x48411a]=_0x25d679;}}return _0xc3e551;},'vectorMultiplyTranspose':function(_0x11b8bf,_0x48a2b1){const _0x21b5ef=a0_0x15a7;let _0x27af96=_0x11b8bf[0x0][_0x21b5ef(0x1d8)],_0x2a9883=[];for(let _0x450608=0x0;_0x450608<_0x27af96;_0x450608++){let _0x356897=0x0;for(let _0xe669a5=0x0;_0xe669a5<_0x11b8bf['length'];_0xe669a5++)_0x356897+=_0x11b8bf[_0xe669a5][_0x450608]*_0x48a2b1[_0xe669a5];_0x2a9883[_0x450608]=_0x356897;}return _0x2a9883;}},k={'from_control_points':function(_0x4d3513,_0x51ad98,_0x2fd289,_0x14bb68){const _0x41b6fa=a0_0x15a7;_0x14bb68===void 0x0&&(_0x14bb68=this[_0x41b6fa(0x1df)](_0x4d3513,_0x51ad98));let _0xffdd27=L['linspace'](0x0,0x1,_0x2fd289),_0x5836e6=[];for(var _0x4250ea of _0xffdd27)_0x5836e6[_0x41b6fa(0x1e4)](this[_0x41b6fa(0x198)](_0x4250ea,_0x51ad98,_0x4d3513,_0x14bb68));return _0x5836e6;},'from_control_points_cosine':function(_0x439dc4,_0x41b264,_0x4d28f8,_0x30a59c){const _0x185bed=a0_0x15a7;_0x30a59c===void 0x0&&(_0x30a59c=this[_0x185bed(0x1df)](_0x439dc4,_0x41b264));let _0x36b9a7=L['normalizedCosineSpacing'](_0x4d28f8),_0x318ece=[];for(var _0x2373af of _0x36b9a7)_0x318ece[_0x185bed(0x1e4)](this[_0x185bed(0x198)](_0x2373af,_0x41b264,_0x439dc4,_0x30a59c));return _0x318ece;},'approximate_curve':function(_0x256dca,_0x43fc76,_0x3c48cd=0x3,_0x82d2c9=!0x1,_0x3454b4=a0_0x3aa890(0x189),_0x703069=!0x1){const _0x348129=a0_0x3aa890;if(_0x43fc76<_0x3c48cd+0x1)throw new Error(_0x348129(0x1a6));if(_0x256dca[_0x348129(0x1d8)]<0x2)throw new Error(_0x348129(0x1de));let _0x51156f=_0x256dca;_0x703069&&(_0x51156f=this[_0x348129(0x201)](_0x256dca,_0x256dca[_0x348129(0x1d8)]));let _0x19a04c=_0x51156f[_0x348129(0x1d8)],_0xd8c63d=_0x43fc76,_0x57fd89=_0x51156f[0x0][_0x348129(0x1d8)],_0x3c0985,_0x552f8e;switch(_0x3454b4){case'uniform':_0x3c0985=this[_0x348129(0x173)](_0x51156f),_0x552f8e=this[_0x348129(0x1c7)](_0xd8c63d,_0x3c48cd);break;case _0x348129(0x1d2):_0x3c0985=this[_0x348129(0x1ab)](_0x51156f),_0x552f8e=this[_0x348129(0x1eb)](_0x3c0985,_0xd8c63d,_0x3c48cd);break;case _0x348129(0x189):default:_0x3c0985=this[_0x348129(0x1fa)](_0x51156f),_0x552f8e=this[_0x348129(0x1eb)](_0x3c0985,_0xd8c63d,_0x3c48cd);break;}let _0x31d941=[];for(let _0x138af7=0x0;_0x138af7<_0x19a04c;_0x138af7++){_0x31d941[_0x138af7]=[];for(let _0x32a273=0x0;_0x32a273<_0xd8c63d;_0x32a273++)_0x31d941[_0x138af7][_0x32a273]=this[_0x348129(0x195)](_0x32a273,_0x3c48cd,_0x3c0985[_0x138af7],_0x552f8e);}let _0x9ad756=new Array(_0xd8c63d);for(let _0x36937d=0x0;_0x36937d<_0xd8c63d;_0x36937d++)_0x9ad756[_0x36937d]=new Array(_0x57fd89);if(_0x82d2c9){_0x9ad756[0x0]=[..._0x51156f[0x0]],_0x9ad756[_0xd8c63d-0x1]=[..._0x51156f[_0x51156f[_0x348129(0x1d8)]-0x1]];let _0x2cfe54=[];for(let _0x1a1576=0x1;_0x1a1576<_0xd8c63d-0x1;_0x1a1576++)_0x2cfe54[_0x348129(0x1e4)](_0x1a1576);for(let _0x3ec1be=0x0;_0x3ec1be<_0x57fd89;_0x3ec1be++){let _0x5b0486=_0x51156f[_0x348129(0x1a8)](_0x1fae85=>_0x1fae85[_0x3ec1be]);if(_0x2cfe54[_0x348129(0x1d8)]===0x0)continue;let _0x127459=[],_0x5a5988=[];for(let _0x516ac4=0x0;_0x516ac4<_0x19a04c;_0x516ac4++){_0x127459[_0x516ac4]=[];for(let _0x750110 of _0x2cfe54)_0x127459[_0x516ac4][_0x348129(0x1e4)](_0x31d941[_0x516ac4][_0x750110]);_0x5a5988[_0x516ac4]=_0x5b0486[_0x516ac4]-_0x31d941[_0x516ac4][0x0]*_0x9ad756[0x0][_0x3ec1be]-_0x31d941[_0x516ac4][_0xd8c63d-0x1]*_0x9ad756[_0xd8c63d-0x1][_0x3ec1be];}let _0x53495b=$['multiplyTranspose'](_0x127459,_0x127459),_0x10333d=$['vectorMultiplyTranspose'](_0x127459,_0x5a5988),_0xcbe985=L[_0x348129(0x1ec)](_0x53495b,_0x10333d);for(let _0x3bee28=0x0;_0x3bee28<_0x2cfe54[_0x348129(0x1d8)];_0x3bee28++)_0x9ad756[_0x2cfe54[_0x3bee28]][_0x3ec1be]=_0xcbe985[_0x3bee28];}}else for(let _0x49f419=0x0;_0x49f419<_0x57fd89;_0x49f419++){let _0x89a06a=_0x51156f[_0x348129(0x1a8)](_0x352e03=>_0x352e03[_0x49f419]),_0x53e161=$[_0x348129(0x20f)](_0x31d941,_0x31d941),_0x35542f=$[_0x348129(0x18e)](_0x31d941,_0x89a06a),_0x2cf51d=L['solveLinearSystem'](_0x53e161,_0x35542f);for(let _0x3cacf0=0x0;_0x3cacf0<_0xd8c63d;_0x3cacf0++)_0x9ad756[_0x3cacf0][_0x49f419]=_0x2cf51d[_0x3cacf0];}return{'controlPoints':_0x9ad756,'knots':_0x552f8e,'degree':_0x3c48cd};},'_resample_to_uniform_arc_length':function(_0x331b4e,_0x525298){const _0x283d5b=a0_0x3aa890;if(_0x331b4e[_0x283d5b(0x1d8)]<0x2)return _0x331b4e;let _0x5e7761=[0x0],_0x2e8545=0x0;for(let _0x3cbd56=0x1;_0x3cbd56<_0x331b4e['length'];_0x3cbd56++){let _0x37ec2e=0x0;for(let _0x5ca23d=0x0;_0x5ca23d<_0x331b4e[_0x3cbd56][_0x283d5b(0x1d8)];_0x5ca23d++)_0x37ec2e+=Math[_0x283d5b(0x1ee)](_0x331b4e[_0x3cbd56][_0x5ca23d]-_0x331b4e[_0x3cbd56-0x1][_0x5ca23d],0x2);_0x2e8545+=Math[_0x283d5b(0x21c)](_0x37ec2e),_0x5e7761[_0x283d5b(0x1e4)](_0x2e8545);}if(_0x2e8545===0x0)return _0x331b4e;let _0x35b3e1=[],_0x424a9d=_0x2e8545/(_0x525298-0x1);for(let _0x3bfc0e=0x0;_0x3bfc0e<_0x525298;_0x3bfc0e++){let _0x28a5f5=_0x3bfc0e*_0x424a9d,_0x1e946d=0x0;for(let _0x22742b=0x1;_0x22742b<_0x5e7761[_0x283d5b(0x1d8)];_0x22742b++){if(_0x5e7761[_0x22742b]>=_0x28a5f5){_0x1e946d=_0x22742b-0x1;break;}_0x1e946d=_0x22742b-0x1;}if(_0x1e946d>=_0x331b4e[_0x283d5b(0x1d8)]-0x1){_0x35b3e1[_0x283d5b(0x1e4)]([..._0x331b4e[_0x331b4e[_0x283d5b(0x1d8)]-0x1]]);continue;}let _0x360c7b=_0x5e7761[_0x1e946d],_0x3280d1=_0x5e7761[_0x1e946d+0x1]-_0x360c7b,_0x3b2fae=0x0;_0x3280d1>0x0&&(_0x3b2fae=(_0x28a5f5-_0x360c7b)/_0x3280d1);let _0x44b261=_0x331b4e[_0x1e946d],_0x52f1c4=_0x331b4e[_0x1e946d+0x1],_0x40ee52=[];for(let _0x47ba3a=0x0;_0x47ba3a<_0x44b261['length'];_0x47ba3a++)_0x40ee52[_0x283d5b(0x1e4)](_0x44b261[_0x47ba3a]+_0x3b2fae*(_0x52f1c4[_0x47ba3a]-_0x44b261[_0x47ba3a]));_0x35b3e1[_0x283d5b(0x1e4)](_0x40ee52);}return _0x35b3e1;},'_uniform_parameterization':function(_0x42a01f){const _0x29b840=a0_0x3aa890;let _0x387295=[];for(let _0x3ef3c8=0x0;_0x3ef3c8<_0x42a01f['length'];_0x3ef3c8++)_0x387295[_0x29b840(0x1e4)](_0x3ef3c8/(_0x42a01f[_0x29b840(0x1d8)]-0x1));return _0x387295;},'_uniform_knot_vector':function(_0x592cb6,_0x50276d){let _0x15e608=_0x592cb6,_0x35cc20=[],_0x5960a6=_0x15e608-_0x50276d-0x1;for(let _0x669c88=0x0;_0x669c88<=_0x50276d;_0x669c88++)_0x35cc20['push'](0x0);for(let _0x253034=0x1;_0x253034<=_0x5960a6;_0x253034++)_0x35cc20['push'](_0x253034/(_0x5960a6+0x1));for(let _0x4cf2fd=0x0;_0x4cf2fd<=_0x50276d;_0x4cf2fd++)_0x35cc20['push'](0x1);return _0x35cc20;},'_centripetal_parameterization':function(_0xfc9f89){const _0x3b988c=a0_0x3aa890;let _0x135fa4=[0x0],_0x434332=[0x0],_0x17cc42=0x0;for(let _0x45014e=0x1;_0x45014e<_0xfc9f89[_0x3b988c(0x1d8)];_0x45014e++){let _0x46a752=0x0;for(let _0x521437=0x0;_0x521437<_0xfc9f89[_0x45014e][_0x3b988c(0x1d8)];_0x521437++)_0x46a752+=Math['pow'](_0xfc9f89[_0x45014e][_0x521437]-_0xfc9f89[_0x45014e-0x1][_0x521437],0x2);_0x46a752=Math[_0x3b988c(0x1ee)](_0x46a752,0.25),_0x17cc42+=_0x46a752,_0x434332['push'](_0x17cc42);}for(let _0x44cb3d=0x1;_0x44cb3d<_0xfc9f89[_0x3b988c(0x1d8)];_0x44cb3d++)_0x135fa4['push'](_0x434332[_0x44cb3d]/_0x17cc42);return _0x135fa4;},'_chord_length_parameterization':function(_0x86a17d){const _0x5c64b6=a0_0x3aa890;let _0x4d4ea8=[0x0],_0x51f4ad=[0x0],_0x39794a=0x0;for(let _0x1cafb9=0x1;_0x1cafb9<_0x86a17d[_0x5c64b6(0x1d8)];_0x1cafb9++){let _0x2b0dc8=0x0;for(let _0x44b83b=0x0;_0x44b83b<_0x86a17d[_0x1cafb9][_0x5c64b6(0x1d8)];_0x44b83b++)_0x2b0dc8+=Math[_0x5c64b6(0x1ee)](_0x86a17d[_0x1cafb9][_0x44b83b]-_0x86a17d[_0x1cafb9-0x1][_0x44b83b],0x2);_0x2b0dc8=Math[_0x5c64b6(0x21c)](_0x2b0dc8),_0x39794a+=_0x2b0dc8,_0x51f4ad[_0x5c64b6(0x1e4)](_0x39794a);}for(let _0xfe25b0=0x1;_0xfe25b0<_0x86a17d['length'];_0xfe25b0++)_0x4d4ea8['push'](_0x51f4ad[_0xfe25b0]/_0x39794a);return _0x4d4ea8;},'_approximate_knot_vector':function(_0xe028ce,_0x2966a6,_0x57f3f){const _0x5b417b=a0_0x3aa890;let _0x34960a=_0xe028ce[_0x5b417b(0x1d8)],_0x7c8f0f=_0x2966a6,_0x4652e8=[];for(let _0x3f7007=0x0;_0x3f7007<=_0x57f3f;_0x3f7007++)_0x4652e8[_0x5b417b(0x1e4)](0x0);let _0x36eba3=(_0x34960a-0x1)/(_0x7c8f0f-_0x57f3f);for(let _0x45e5f5=0x1;_0x45e5f5<_0x7c8f0f-_0x57f3f;_0x45e5f5++){let _0x167f39=0x0;for(let _0x10181c=Math[_0x5b417b(0x1a9)](_0x45e5f5*_0x36eba3);_0x10181c<Math[_0x5b417b(0x1a9)]((_0x45e5f5+0x1)*_0x36eba3);_0x10181c++)_0x167f39+=_0xe028ce[Math[_0x5b417b(0x190)](_0x10181c+_0x57f3f,_0x34960a-0x1)];_0x4652e8[_0x5b417b(0x1e4)](_0x167f39/(Math[_0x5b417b(0x1a9)]((_0x45e5f5+0x1)*_0x36eba3)-Math[_0x5b417b(0x1a9)](_0x45e5f5*_0x36eba3)));}for(let _0x1bc5b1=0x0;_0x1bc5b1<=_0x57f3f;_0x1bc5b1++)_0x4652e8[_0x5b417b(0x1e4)](0x1);return _0x4652e8;},'_basis_function':function(_0x33f512,_0x5f1794,_0x3acf17,_0xb9602d){const _0x32606a=a0_0x3aa890;if(_0x5f1794===0x0)return _0x3acf17===_0xb9602d[_0xb9602d[_0x32606a(0x1d8)]-0x1]&&_0x3acf17===_0xb9602d[_0x33f512+0x1]&&_0x3acf17>_0xb9602d[_0x33f512]||_0x3acf17>=_0xb9602d[_0x33f512]&&_0x3acf17<_0xb9602d[_0x33f512+0x1]?0x1:0x0;let _0x498c5f=0x0,_0x11511e=0x0,_0x372693=_0xb9602d[_0x33f512+_0x5f1794]-_0xb9602d[_0x33f512];_0x372693!==0x0&&(_0x498c5f=(_0x3acf17-_0xb9602d[_0x33f512])/_0x372693*this[_0x32606a(0x195)](_0x33f512,_0x5f1794-0x1,_0x3acf17,_0xb9602d));let _0x8ce701=_0xb9602d[_0x33f512+_0x5f1794+0x1]-_0xb9602d[_0x33f512+0x1];return _0x8ce701!==0x0&&(_0x11511e=(_0xb9602d[_0x33f512+_0x5f1794+0x1]-_0x3acf17)/_0x8ce701*this['_basis_function'](_0x33f512+0x1,_0x5f1794-0x1,_0x3acf17,_0xb9602d)),_0x498c5f+_0x11511e;},'uniform_knot_spacing':function(_0x196dab,_0x5abc77){const _0x5a97ac=a0_0x3aa890;let _0x482613=_0x196dab[_0x5a97ac(0x1d8)]+_0x5abc77+0x1,_0x5ee30c=[],_0x145544=_0x482613-(_0x5abc77+0x1)*0x2;for(var _0x558c45=0x0;_0x558c45<_0x5abc77+0x1;_0x558c45++)_0x5ee30c[_0x5a97ac(0x1e4)](0x0);for(var _0x558c45=0x0;_0x558c45<_0x145544;_0x558c45++)_0x5ee30c[_0x5a97ac(0x1e4)](_0x558c45+0x1);let _0x2b13f5=_0x5ee30c[_0x5ee30c[_0x5a97ac(0x1d8)]-0x1]+0x1;for(var _0x558c45=0x0;_0x558c45<_0x5abc77+0x1;_0x558c45++)_0x5ee30c[_0x5a97ac(0x1e4)](_0x2b13f5);return _0x5ee30c;},'bspline':function(_0x2482e9,_0x1bd9de,_0x1058c5,_0x324091,_0x4c3d11,_0x39c668){const _0x286de7=a0_0x3aa890;var _0x20fe7e,_0x481bd3,_0xfc9cff,_0x24ff5f,_0x4aa348=_0x1058c5[_0x286de7(0x1d8)],_0x4e163c=_0x1058c5[0x0][_0x286de7(0x1d8)];if(_0x1bd9de<0x1)throw new Error(_0x286de7(0x1d5));if(_0x1bd9de>_0x4aa348-0x1)throw new Error(_0x286de7(0x21b));if(!_0x4c3d11){for(_0x4c3d11=[],_0x20fe7e=0x0;_0x20fe7e<_0x4aa348;_0x20fe7e++)_0x4c3d11[_0x20fe7e]=0x1;}if(_0x324091){if(_0x324091[_0x286de7(0x1d8)]!==_0x4aa348+_0x1bd9de+0x1)throw new Error(_0x286de7(0x1d7));}else{var _0x324091=[];for(_0x20fe7e=0x0;_0x20fe7e<_0x4aa348+_0x1bd9de+0x1;_0x20fe7e++)_0x324091[_0x20fe7e]=_0x20fe7e;}var _0x431172=[_0x1bd9de,_0x324091[_0x286de7(0x1d8)]-0x1-_0x1bd9de],_0x288b71=_0x324091[_0x431172[0x0]],_0x23b248=_0x324091[_0x431172[0x1]];if(_0x2482e9=_0x2482e9*(_0x23b248-_0x288b71)+_0x288b71,_0x2482e9<_0x288b71||_0x2482e9>_0x23b248)throw new Error(_0x286de7(0x1f9));for(_0xfc9cff=_0x431172[0x0];_0xfc9cff<_0x431172[0x1]&&!(_0x2482e9>=_0x324091[_0xfc9cff]&&_0x2482e9<=_0x324091[_0xfc9cff+0x1]);_0xfc9cff++);var _0x2b78e8=[];for(_0x20fe7e=0x0;_0x20fe7e<_0x4aa348;_0x20fe7e++){for(_0x2b78e8[_0x20fe7e]=[],_0x481bd3=0x0;_0x481bd3<_0x4e163c;_0x481bd3++)_0x2b78e8[_0x20fe7e][_0x481bd3]=_0x1058c5[_0x20fe7e][_0x481bd3]*_0x4c3d11[_0x20fe7e];_0x2b78e8[_0x20fe7e][_0x4e163c]=_0x4c3d11[_0x20fe7e];}var _0x52b792;for(_0x24ff5f=0x1;_0x24ff5f<=_0x1bd9de+0x1;_0x24ff5f++)for(_0x20fe7e=_0xfc9cff;_0x20fe7e>_0xfc9cff-_0x1bd9de-0x1+_0x24ff5f;_0x20fe7e--)for(_0x52b792=(_0x2482e9-_0x324091[_0x20fe7e])/(_0x324091[_0x20fe7e+_0x1bd9de+0x1-_0x24ff5f]-_0x324091[_0x20fe7e]),_0x481bd3=0x0;_0x481bd3<_0x4e163c+0x1;_0x481bd3++)_0x2b78e8[_0x20fe7e][_0x481bd3]=(0x1-_0x52b792)*_0x2b78e8[_0x20fe7e-0x1][_0x481bd3]+_0x52b792*_0x2b78e8[_0x20fe7e][_0x481bd3];var _0x39c668=_0x39c668||[];for(_0x20fe7e=0x0;_0x20fe7e<_0x4e163c;_0x20fe7e++)_0x39c668[_0x20fe7e]=_0x2b78e8[_0xfc9cff][_0x20fe7e]/_0x2b78e8[_0xfc9cff][_0x4e163c];return _0x39c668;}},T={'from_control_points':function(_0x2cbb95,_0x939f3d,_0x113808,_0x140d86,_0x2375ba){const _0x5c3520=a0_0x3aa890;_0x140d86===void 0x0&&(_0x140d86=this['uniform_knot_spacing'](_0x2cbb95,_0x939f3d)),_0x2375ba===void 0x0&&(_0x2375ba=new Array(_0x2cbb95[_0x5c3520(0x1d8)])[_0x5c3520(0x1c6)](0x1));let _0x450baa=L[_0x5c3520(0x200)](0x0,0x1,_0x113808),_0x1a5217=[];for(var _0x15b266 of _0x450baa)_0x1a5217[_0x5c3520(0x1e4)](this[_0x5c3520(0x1b8)](_0x15b266,_0x939f3d,_0x2cbb95,_0x140d86,_0x2375ba));return _0x1a5217;},'from_control_points_cosine':function(_0x5a5d92,_0x56c3dd,_0x41fac7,_0x2edee3,_0x3114fb){const _0x51ce2a=a0_0x3aa890;_0x2edee3===void 0x0&&(_0x2edee3=this['uniform_knot_spacing'](_0x5a5d92,_0x56c3dd)),_0x3114fb===void 0x0&&(_0x3114fb=new Array(_0x5a5d92[_0x51ce2a(0x1d8)])[_0x51ce2a(0x1c6)](0x1));let _0x15effc=L[_0x51ce2a(0x191)](_0x41fac7),_0x3d5ad9=[];for(var _0x583c43 of _0x15effc)_0x3d5ad9[_0x51ce2a(0x1e4)](this['nurbs'](_0x583c43,_0x56c3dd,_0x5a5d92,_0x2edee3,_0x3114fb));return _0x3d5ad9;},'approximate_curve':function(_0x216128,_0xcf4c5,_0x12556e=0x3,_0x1b803a=!0x1,_0x28c7d7='centripetal',_0x5bdf16=!0x1){const _0x33cbb9=a0_0x3aa890;if(_0xcf4c5<_0x12556e+0x1)throw new Error('resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201');if(_0x216128['length']<0x2)throw new Error('Need\x20at\x20least\x202\x20points\x20to\x20approximate');let _0x4bd1bd=_0x216128;_0x5bdf16&&(_0x4bd1bd=this[_0x33cbb9(0x201)](_0x216128,_0x216128[_0x33cbb9(0x1d8)]));let _0x58def8=_0x4bd1bd[_0x33cbb9(0x1d8)],_0x39eb04=_0xcf4c5,_0x1a7f69=_0x4bd1bd[0x0][_0x33cbb9(0x1d8)],_0x5baf42,_0x19f897;switch(_0x28c7d7){case'uniform':_0x5baf42=this[_0x33cbb9(0x173)](_0x4bd1bd),_0x19f897=this[_0x33cbb9(0x179)](_0x39eb04,_0x12556e);break;case'chordLength':_0x5baf42=this[_0x33cbb9(0x1ab)](_0x4bd1bd),_0x19f897=this[_0x33cbb9(0x1eb)](_0x5baf42,_0x39eb04,_0x12556e);break;case _0x33cbb9(0x189):default:_0x5baf42=this[_0x33cbb9(0x1fa)](_0x4bd1bd),_0x19f897=this[_0x33cbb9(0x1eb)](_0x5baf42,_0x39eb04,_0x12556e);break;}let _0x5521eb=[];for(let _0x20c43e=0x0;_0x20c43e<_0x58def8;_0x20c43e++){_0x5521eb[_0x20c43e]=[];for(let _0x344675=0x0;_0x344675<_0x39eb04;_0x344675++)_0x5521eb[_0x20c43e][_0x344675]=this[_0x33cbb9(0x195)](_0x344675,_0x12556e,_0x5baf42[_0x20c43e],_0x19f897);}let _0x2ebc81=new Array(_0x39eb04);for(let _0x286c89=0x0;_0x286c89<_0x39eb04;_0x286c89++)_0x2ebc81[_0x286c89]=new Array(_0x1a7f69);let _0x1ac88b=new Array(_0x39eb04)['fill'](0x1);if(_0x1b803a){_0x2ebc81[0x0]=[..._0x4bd1bd[0x0]],_0x2ebc81[_0x39eb04-0x1]=[..._0x4bd1bd[_0x4bd1bd['length']-0x1]];let _0xce6195=[];for(let _0x573523=0x1;_0x573523<_0x39eb04-0x1;_0x573523++)_0xce6195['push'](_0x573523);for(let _0xf1d803=0x0;_0xf1d803<_0x1a7f69;_0xf1d803++){let _0x4d02bc=_0x4bd1bd[_0x33cbb9(0x1a8)](_0x2b9b89=>_0x2b9b89[_0xf1d803]);if(_0xce6195['length']===0x0)continue;let _0x5b3793=[],_0x24e3e2=[];for(let _0x364c65=0x0;_0x364c65<_0x58def8;_0x364c65++){_0x5b3793[_0x364c65]=[];for(let _0x227412 of _0xce6195)_0x5b3793[_0x364c65][_0x33cbb9(0x1e4)](_0x5521eb[_0x364c65][_0x227412]);_0x24e3e2[_0x364c65]=_0x4d02bc[_0x364c65]-_0x5521eb[_0x364c65][0x0]*_0x2ebc81[0x0][_0xf1d803]-_0x5521eb[_0x364c65][_0x39eb04-0x1]*_0x2ebc81[_0x39eb04-0x1][_0xf1d803];}let _0x34130d=$[_0x33cbb9(0x20f)](_0x5b3793,_0x5b3793),_0x392111=$['vectorMultiplyTranspose'](_0x5b3793,_0x24e3e2),_0x1bf41a=L['solveLinearSystem'](_0x34130d,_0x392111);for(let _0x5124ab=0x0;_0x5124ab<_0xce6195[_0x33cbb9(0x1d8)];_0x5124ab++)_0x2ebc81[_0xce6195[_0x5124ab]][_0xf1d803]=_0x1bf41a[_0x5124ab];}}else for(let _0x26be69=0x0;_0x26be69<_0x1a7f69;_0x26be69++){let _0x121d6a=_0x4bd1bd[_0x33cbb9(0x1a8)](_0x565a08=>_0x565a08[_0x26be69]),_0x30f8d4=$[_0x33cbb9(0x20f)](_0x5521eb,_0x5521eb),_0x3baf6a=$[_0x33cbb9(0x18e)](_0x5521eb,_0x121d6a),_0x29a4fc=L['solveLinearSystem'](_0x30f8d4,_0x3baf6a);for(let _0x4fa31e=0x0;_0x4fa31e<_0x39eb04;_0x4fa31e++)_0x2ebc81[_0x4fa31e][_0x26be69]=_0x29a4fc[_0x4fa31e];}return{'controlPoints':_0x2ebc81,'knots':_0x19f897,'weights':_0x1ac88b,'degree':_0x12556e};},'_resample_to_uniform_arc_length':function(_0xba5682,_0x465ebf){const _0x50e28d=a0_0x3aa890;if(_0xba5682[_0x50e28d(0x1d8)]<0x2)return _0xba5682;let _0x4c302e=[0x0],_0x262817=0x0;for(let _0x12ab2a=0x1;_0x12ab2a<_0xba5682[_0x50e28d(0x1d8)];_0x12ab2a++){let _0x36d7fa=0x0;for(let _0x5a1f9c=0x0;_0x5a1f9c<_0xba5682[_0x12ab2a][_0x50e28d(0x1d8)];_0x5a1f9c++)_0x36d7fa+=Math[_0x50e28d(0x1ee)](_0xba5682[_0x12ab2a][_0x5a1f9c]-_0xba5682[_0x12ab2a-0x1][_0x5a1f9c],0x2);_0x262817+=Math[_0x50e28d(0x21c)](_0x36d7fa),_0x4c302e['push'](_0x262817);}if(_0x262817===0x0)return _0xba5682;let _0x4cba84=[],_0x10a25b=_0x262817/(_0x465ebf-0x1);for(let _0x3953d1=0x0;_0x3953d1<_0x465ebf;_0x3953d1++){let _0x28d638=_0x3953d1*_0x10a25b,_0x3c6aff=0x0;for(let _0x366788=0x1;_0x366788<_0x4c302e[_0x50e28d(0x1d8)];_0x366788++){if(_0x4c302e[_0x366788]>=_0x28d638){_0x3c6aff=_0x366788-0x1;break;}_0x3c6aff=_0x366788-0x1;}if(_0x3c6aff>=_0xba5682[_0x50e28d(0x1d8)]-0x1){_0x4cba84[_0x50e28d(0x1e4)]([..._0xba5682[_0xba5682[_0x50e28d(0x1d8)]-0x1]]);continue;}let _0x2c668c=_0x4c302e[_0x3c6aff],_0x1a62c0=_0x4c302e[_0x3c6aff+0x1]-_0x2c668c,_0x34b15b=0x0;_0x1a62c0>0x0&&(_0x34b15b=(_0x28d638-_0x2c668c)/_0x1a62c0);let _0x1d3cc8=_0xba5682[_0x3c6aff],_0x50ed8c=_0xba5682[_0x3c6aff+0x1],_0x1e0f5b=[];for(let _0x252c03=0x0;_0x252c03<_0x1d3cc8[_0x50e28d(0x1d8)];_0x252c03++)_0x1e0f5b[_0x50e28d(0x1e4)](_0x1d3cc8[_0x252c03]+_0x34b15b*(_0x50ed8c[_0x252c03]-_0x1d3cc8[_0x252c03]));_0x4cba84[_0x50e28d(0x1e4)](_0x1e0f5b);}return _0x4cba84;},'_uniform_parameterization':function(_0x131e88){const _0x254a77=a0_0x3aa890;let _0x4d5e8e=[];for(let _0x1ff84b=0x0;_0x1ff84b<_0x131e88['length'];_0x1ff84b++)_0x4d5e8e[_0x254a77(0x1e4)](_0x1ff84b/(_0x131e88[_0x254a77(0x1d8)]-0x1));return _0x4d5e8e;},'uniform_knot_vector':function(_0x83d0a5,_0x285ac3){const _0x1f5a27=a0_0x3aa890;let _0x55687c=_0x83d0a5,_0xa726e1=[],_0x23ffaa=_0x55687c-_0x285ac3-0x1;for(let _0x4acaf7=0x0;_0x4acaf7<=_0x285ac3;_0x4acaf7++)_0xa726e1[_0x1f5a27(0x1e4)](0x0);for(let _0x52f702=0x1;_0x52f702<=_0x23ffaa;_0x52f702++)_0xa726e1[_0x1f5a27(0x1e4)](_0x52f702/(_0x23ffaa+0x1));for(let _0x163506=0x0;_0x163506<=_0x285ac3;_0x163506++)_0xa726e1[_0x1f5a27(0x1e4)](0x1);return _0xa726e1;},'_centripetal_parameterization':function(_0x31ab28){const _0x2ca645=a0_0x3aa890;let _0x189b98=[0x0],_0x1050c2=[0x0],_0xabc1b0=0x0;for(let _0xeeeea2=0x1;_0xeeeea2<_0x31ab28[_0x2ca645(0x1d8)];_0xeeeea2++){let _0x1a2d3a=0x0;for(let _0x2b9e69=0x0;_0x2b9e69<_0x31ab28[_0xeeeea2]['length'];_0x2b9e69++)_0x1a2d3a+=Math[_0x2ca645(0x1ee)](_0x31ab28[_0xeeeea2][_0x2b9e69]-_0x31ab28[_0xeeeea2-0x1][_0x2b9e69],0x2);_0x1a2d3a=Math['pow'](_0x1a2d3a,0.25),_0xabc1b0+=_0x1a2d3a,_0x1050c2['push'](_0xabc1b0);}for(let _0x4431a6=0x1;_0x4431a6<_0x31ab28[_0x2ca645(0x1d8)];_0x4431a6++)_0x189b98[_0x2ca645(0x1e4)](_0x1050c2[_0x4431a6]/_0xabc1b0);return _0x189b98;},'_chord_length_parameterization':function(_0x51ee5e){const _0x5c488c=a0_0x3aa890;let _0xc3b7f4=[0x0],_0x2b8a2a=[0x0],_0x656b08=0x0;for(let _0x40a486=0x1;_0x40a486<_0x51ee5e[_0x5c488c(0x1d8)];_0x40a486++){let _0x138e95=0x0;for(let _0x24ad8a=0x0;_0x24ad8a<_0x51ee5e[_0x40a486][_0x5c488c(0x1d8)];_0x24ad8a++)_0x138e95+=Math['pow'](_0x51ee5e[_0x40a486][_0x24ad8a]-_0x51ee5e[_0x40a486-0x1][_0x24ad8a],0x2);_0x138e95=Math[_0x5c488c(0x21c)](_0x138e95),_0x656b08+=_0x138e95,_0x2b8a2a[_0x5c488c(0x1e4)](_0x656b08);}for(let _0x3379c8=0x1;_0x3379c8<_0x51ee5e[_0x5c488c(0x1d8)];_0x3379c8++)_0xc3b7f4[_0x5c488c(0x1e4)](_0x2b8a2a[_0x3379c8]/_0x656b08);return _0xc3b7f4;},'_approximate_knot_vector':function(_0x49264b,_0x53041,_0x52d141){const _0x2de28a=a0_0x3aa890;let _0x6e180e=_0x49264b[_0x2de28a(0x1d8)],_0x3c0864=_0x53041,_0x22ae2=[];for(let _0x3ab3ac=0x0;_0x3ab3ac<=_0x52d141;_0x3ab3ac++)_0x22ae2['push'](0x0);let _0x222ca7=(_0x6e180e-0x1)/(_0x3c0864-_0x52d141);for(let _0x275f6c=0x1;_0x275f6c<_0x3c0864-_0x52d141;_0x275f6c++){let _0x544a57=0x0;for(let _0x365272=Math[_0x2de28a(0x1a9)](_0x275f6c*_0x222ca7);_0x365272<Math[_0x2de28a(0x1a9)]((_0x275f6c+0x1)*_0x222ca7);_0x365272++)_0x544a57+=_0x49264b[Math[_0x2de28a(0x190)](_0x365272+_0x52d141,_0x6e180e-0x1)];_0x22ae2[_0x2de28a(0x1e4)](_0x544a57/(Math['floor']((_0x275f6c+0x1)*_0x222ca7)-Math[_0x2de28a(0x1a9)](_0x275f6c*_0x222ca7)));}for(let _0x5eba68=0x0;_0x5eba68<=_0x52d141;_0x5eba68++)_0x22ae2[_0x2de28a(0x1e4)](0x1);return _0x22ae2;},'_basis_function':function(_0x3a3dfc,_0x3d1018,_0x3fcc42,_0x593424){const _0xd83b28=a0_0x3aa890;if(_0x3d1018===0x0)return _0x3fcc42===_0x593424[_0x593424[_0xd83b28(0x1d8)]-0x1]&&_0x3fcc42===_0x593424[_0x3a3dfc+0x1]&&_0x3fcc42>_0x593424[_0x3a3dfc]||_0x3fcc42>=_0x593424[_0x3a3dfc]&&_0x3fcc42<_0x593424[_0x3a3dfc+0x1]?0x1:0x0;let _0x5d235c=0x0,_0x3d1b8c=0x0,_0xbdd57=_0x593424[_0x3a3dfc+_0x3d1018]-_0x593424[_0x3a3dfc];_0xbdd57!==0x0&&(_0x5d235c=(_0x3fcc42-_0x593424[_0x3a3dfc])/_0xbdd57*this[_0xd83b28(0x195)](_0x3a3dfc,_0x3d1018-0x1,_0x3fcc42,_0x593424));let _0x4c2b90=_0x593424[_0x3a3dfc+_0x3d1018+0x1]-_0x593424[_0x3a3dfc+0x1];return _0x4c2b90!==0x0&&(_0x3d1b8c=(_0x593424[_0x3a3dfc+_0x3d1018+0x1]-_0x3fcc42)/_0x4c2b90*this[_0xd83b28(0x195)](_0x3a3dfc+0x1,_0x3d1018-0x1,_0x3fcc42,_0x593424)),_0x5d235c+_0x3d1b8c;},'uniform_knot_spacing':function(_0x11ffc0,_0x4b85bf){const _0x11a26f=a0_0x3aa890;let _0x4dca66=_0x11ffc0[_0x11a26f(0x1d8)]+_0x4b85bf+0x1,_0x3e6865=[],_0x52aa36=_0x4dca66-(_0x4b85bf+0x1)*0x2;for(var _0xcfbeb6=0x0;_0xcfbeb6<_0x4b85bf+0x1;_0xcfbeb6++)_0x3e6865[_0x11a26f(0x1e4)](0x0);for(var _0xcfbeb6=0x0;_0xcfbeb6<_0x52aa36;_0xcfbeb6++)_0x3e6865[_0x11a26f(0x1e4)](_0xcfbeb6+0x1);let _0x12e567=_0x3e6865[_0x3e6865['length']-0x1]+0x1;for(var _0xcfbeb6=0x0;_0xcfbeb6<_0x4b85bf+0x1;_0xcfbeb6++)_0x3e6865[_0x11a26f(0x1e4)](_0x12e567);return _0x3e6865;},'nurbs':function(_0xf8583b,_0x16b22c,_0x457b72,_0x314397,_0x36206c,_0x28a58d){const _0xc11576=a0_0x3aa890;var _0x49d6fc,_0x114f3d,_0x126c1a,_0x2730e7,_0x1c4ec9=_0x457b72[_0xc11576(0x1d8)],_0x239cb8=_0x457b72[0x0][_0xc11576(0x1d8)];if(_0x16b22c<0x1)throw new Error(_0xc11576(0x1d5));if(_0x16b22c>_0x1c4ec9-0x1)throw new Error('degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201');if(!_0x36206c){for(_0x36206c=[],_0x49d6fc=0x0;_0x49d6fc<_0x1c4ec9;_0x49d6fc++)_0x36206c[_0x49d6fc]=0x1;}if(_0x314397){if(_0x314397[_0xc11576(0x1d8)]!==_0x1c4ec9+_0x16b22c+0x1)throw new Error(_0xc11576(0x1d7));}else{for(_0x314397=[],_0x49d6fc=0x0;_0x49d6fc<_0x1c4ec9+_0x16b22c+0x1;_0x49d6fc++)_0x314397[_0x49d6fc]=_0x49d6fc;}var _0x32f669=[_0x16b22c,_0x314397[_0xc11576(0x1d8)]-0x1-_0x16b22c],_0x238e6e=_0x314397[_0x32f669[0x0]],_0x3505a5=_0x314397[_0x32f669[0x1]];if(_0xf8583b=_0xf8583b*(_0x3505a5-_0x238e6e)+_0x238e6e,_0xf8583b<_0x238e6e||_0xf8583b>_0x3505a5)throw new Error(_0xc11576(0x1f9));for(_0x126c1a=_0x32f669[0x0];_0x126c1a<_0x32f669[0x1]&&!(_0xf8583b>=_0x314397[_0x126c1a]&&_0xf8583b<=_0x314397[_0x126c1a+0x1]);_0x126c1a++);var _0x36cfd7=[];for(_0x49d6fc=0x0;_0x49d6fc<_0x1c4ec9;_0x49d6fc++){for(_0x36cfd7[_0x49d6fc]=[],_0x114f3d=0x0;_0x114f3d<_0x239cb8;_0x114f3d++)_0x36cfd7[_0x49d6fc][_0x114f3d]=_0x457b72[_0x49d6fc][_0x114f3d]*_0x36206c[_0x49d6fc];_0x36cfd7[_0x49d6fc][_0x239cb8]=_0x36206c[_0x49d6fc];}var _0x2c38dd;for(_0x2730e7=0x1;_0x2730e7<=_0x16b22c+0x1;_0x2730e7++)for(_0x49d6fc=_0x126c1a;_0x49d6fc>_0x126c1a-_0x16b22c-0x1+_0x2730e7;_0x49d6fc--)for(_0x2c38dd=(_0xf8583b-_0x314397[_0x49d6fc])/(_0x314397[_0x49d6fc+_0x16b22c+0x1-_0x2730e7]-_0x314397[_0x49d6fc]),_0x114f3d=0x0;_0x114f3d<_0x239cb8+0x1;_0x114f3d++)_0x36cfd7[_0x49d6fc][_0x114f3d]=(0x1-_0x2c38dd)*_0x36cfd7[_0x49d6fc-0x1][_0x114f3d]+_0x2c38dd*_0x36cfd7[_0x49d6fc][_0x114f3d];for(_0x28a58d=_0x28a58d||[],_0x49d6fc=0x0;_0x49d6fc<_0x239cb8;_0x49d6fc++)_0x28a58d[_0x49d6fc]=_0x36cfd7[_0x126c1a][_0x49d6fc]/_0x36cfd7[_0x126c1a][_0x239cb8];return _0x28a58d;},'nurbs_derivative':function(_0xcbc212,_0x1949da,_0x47749e,_0x16648c,_0x997f64){const _0x536177=a0_0x3aa890;var _0x14a670=_0x47749e[_0x536177(0x1d8)],_0x409809=_0x47749e[0x0]['length'];if(_0x997f64||(_0x997f64=new Array(_0x14a670)[_0x536177(0x1c6)](0x1)),!_0x16648c){_0x16648c=[];for(var _0x2437dc=0x0;_0x2437dc<_0x14a670+_0x1949da+0x1;_0x2437dc++)_0x16648c[_0x2437dc]=_0x2437dc;}for(var _0x46e0ab=[],_0x2437dc=0x0;_0x2437dc<_0x14a670;_0x2437dc++){_0x46e0ab[_0x2437dc]=[];for(var _0x3478ac=0x0;_0x3478ac<_0x409809;_0x3478ac++)_0x46e0ab[_0x2437dc][_0x3478ac]=_0x47749e[_0x2437dc][_0x3478ac]*_0x997f64[_0x2437dc];_0x46e0ab[_0x2437dc][_0x409809]=_0x997f64[_0x2437dc];}for(var _0x3de606=[],_0x2437dc=0x0;_0x2437dc<_0x14a670-0x1;_0x2437dc++){_0x3de606[_0x2437dc]=[];for(var _0x4cc58d=_0x1949da/(_0x16648c[_0x2437dc+_0x1949da+0x1]-_0x16648c[_0x2437dc+0x1]),_0x3478ac=0x0;_0x3478ac<=_0x409809;_0x3478ac++)_0x3de606[_0x2437dc][_0x3478ac]=_0x4cc58d*(_0x46e0ab[_0x2437dc+0x1][_0x3478ac]-_0x46e0ab[_0x2437dc][_0x3478ac]);}for(var _0x1ae048=[_0x1949da,_0x16648c[_0x536177(0x1d8)]-0x1-_0x1949da],_0x47746d=_0x16648c[_0x1ae048[0x0]],_0x9a893f=_0x16648c[_0x1ae048[0x1]],_0x200ccf=_0xcbc212*(_0x9a893f-_0x47746d)+_0x47746d,_0x3b0166=this[_0x536177(0x1b8)](_0xcbc212,_0x1949da,_0x47749e,_0x16648c,_0x997f64),_0x3e263e=_0x16648c['slice'](0x1,_0x16648c[_0x536177(0x1d8)]-0x1),_0x113f6a=new Array(_0x409809)['fill'](0x0),_0x22a8b4=0x0,_0x2437dc=0x0;_0x2437dc<_0x14a670-0x1;_0x2437dc++){for(var _0x1468a8=this[_0x536177(0x195)](_0x2437dc,_0x1949da-0x1,_0x200ccf,_0x3e263e),_0x3478ac=0x0;_0x3478ac<_0x409809;_0x3478ac++)_0x113f6a[_0x3478ac]+=_0x1468a8*_0x3de606[_0x2437dc][_0x3478ac];_0x22a8b4+=_0x1468a8*_0x3de606[_0x2437dc][_0x409809];}for(var _0x8787f9=0x0,_0x2437dc=0x0;_0x2437dc<_0x14a670;_0x2437dc++){var _0x1468a8=this[_0x536177(0x195)](_0x2437dc,_0x1949da,_0x200ccf,_0x16648c);_0x8787f9+=_0x1468a8*_0x997f64[_0x2437dc];}for(var _0x5caf3e=[],_0x3478ac=0x0;_0x3478ac<_0x409809;_0x3478ac++)_0x5caf3e[_0x3478ac]=(_0x113f6a[_0x3478ac]-_0x22a8b4*_0x3b0166[_0x3478ac])/_0x8787f9;return _0x5caf3e;},'insert_knot':function(_0x2ecaae,_0x271dd4,_0x21aeb2,_0x2d5fa9,_0x6f9f21){const _0x385b75=a0_0x3aa890;var _0x439692=_0x2ecaae[_0x385b75(0x1d8)],_0x2d0fc6=_0x2ecaae[0x0]['length'];_0x2d5fa9||(_0x2d5fa9=new Array(_0x439692)[_0x385b75(0x1c6)](0x1));for(var _0x507e71=0x0,_0x2cdb3b=0x0;_0x2cdb3b<_0x21aeb2[_0x385b75(0x1d8)]-0x1;_0x2cdb3b++)if(_0x6f9f21>=_0x21aeb2[_0x2cdb3b]&&_0x6f9f21<_0x21aeb2[_0x2cdb3b+0x1]){_0x507e71=_0x2cdb3b;break;}for(var _0x2a5146=[],_0x2cdb3b=0x0;_0x2cdb3b<_0x439692;_0x2cdb3b++){_0x2a5146[_0x2cdb3b]=[];for(var _0x49b035=0x0;_0x49b035<_0x2d0fc6;_0x49b035++)_0x2a5146[_0x2cdb3b][_0x49b035]=_0x2ecaae[_0x2cdb3b][_0x49b035]*_0x2d5fa9[_0x2cdb3b];_0x2a5146[_0x2cdb3b][_0x2d0fc6]=_0x2d5fa9[_0x2cdb3b];}for(var _0x159060=[],_0x2cdb3b=0x0;_0x2cdb3b<=_0x507e71-_0x271dd4;_0x2cdb3b++)_0x159060[_0x2cdb3b]=_0x2a5146[_0x2cdb3b][_0x385b75(0x1f4)]();for(var _0x2cdb3b=_0x507e71-_0x271dd4+0x1;_0x2cdb3b<=_0x507e71;_0x2cdb3b++){var _0x4f93f7=(_0x6f9f21-_0x21aeb2[_0x2cdb3b])/(_0x21aeb2[_0x2cdb3b+_0x271dd4]-_0x21aeb2[_0x2cdb3b]);_0x159060[_0x2cdb3b]=[];for(var _0x49b035=0x0;_0x49b035<=_0x2d0fc6;_0x49b035++)_0x159060[_0x2cdb3b][_0x49b035]=(0x1-_0x4f93f7)*_0x2a5146[_0x2cdb3b-0x1][_0x49b035]+_0x4f93f7*_0x2a5146[_0x2cdb3b][_0x49b035];}for(var _0x2cdb3b=_0x507e71+0x1;_0x2cdb3b<=_0x439692;_0x2cdb3b++)_0x159060[_0x2cdb3b]=_0x2a5146[_0x2cdb3b-0x1][_0x385b75(0x1f4)]();for(var _0x36f968=[],_0x5d9c89=[],_0x2cdb3b=0x0;_0x2cdb3b<_0x159060[_0x385b75(0x1d8)];_0x2cdb3b++){_0x5d9c89[_0x2cdb3b]=_0x159060[_0x2cdb3b][_0x2d0fc6],_0x36f968[_0x2cdb3b]=[];for(var _0x49b035=0x0;_0x49b035<_0x2d0fc6;_0x49b035++)_0x36f968[_0x2cdb3b][_0x49b035]=_0x159060[_0x2cdb3b][_0x49b035]/_0x5d9c89[_0x2cdb3b];}for(var _0x3d1272=[],_0x2cdb3b=0x0;_0x2cdb3b<=_0x507e71;_0x2cdb3b++)_0x3d1272[_0x2cdb3b]=_0x21aeb2[_0x2cdb3b];_0x3d1272[_0x507e71+0x1]=_0x6f9f21;for(var _0x2cdb3b=_0x507e71+0x1;_0x2cdb3b<_0x21aeb2['length'];_0x2cdb3b++)_0x3d1272[_0x2cdb3b+0x1]=_0x21aeb2[_0x2cdb3b];return{'controlPoints':_0x36f968,'knots':_0x3d1272,'weights':_0x5d9c89,'degree':_0x271dd4};},'elevate_degree':function(_0x176d9f,_0x1fa97f,_0x3e131f,_0xc52a6f){const _0x3f73ab=a0_0x3aa890;var _0x434c7c=_0x176d9f[_0x3f73ab(0x1d8)],_0x1a7103=_0x176d9f[0x0][_0x3f73ab(0x1d8)];_0xc52a6f||(_0xc52a6f=new Array(_0x434c7c)['fill'](0x1));for(var _0x12978c=[],_0x24992d=0x0;_0x24992d<_0x434c7c;_0x24992d++){_0x12978c[_0x24992d]=[];for(var _0xbb9c1c=0x0;_0xbb9c1c<_0x1a7103;_0xbb9c1c++)_0x12978c[_0x24992d][_0xbb9c1c]=_0x176d9f[_0x24992d][_0xbb9c1c]*_0xc52a6f[_0x24992d];_0x12978c[_0x24992d][_0x1a7103]=_0xc52a6f[_0x24992d];}var _0x213cd8=[],_0x1b82cf=_0x1fa97f+0x1;_0x213cd8[0x0]=_0x12978c[0x0][_0x3f73ab(0x1f4)]();for(var _0x24992d=0x1;_0x24992d<_0x434c7c;_0x24992d++){_0x213cd8[_0x24992d]=[];for(var _0x27aab1=_0x24992d/_0x1b82cf,_0xbb9c1c=0x0;_0xbb9c1c<=_0x1a7103;_0xbb9c1c++)_0x213cd8[_0x24992d][_0xbb9c1c]=_0x27aab1*_0x12978c[_0x24992d-0x1][_0xbb9c1c]+(0x1-_0x27aab1)*_0x12978c[_0x24992d][_0xbb9c1c];}_0x213cd8[_0x434c7c]=_0x12978c[_0x434c7c-0x1][_0x3f73ab(0x1f4)]();for(var _0x250754=[],_0x111ef7=[],_0x24992d=0x0;_0x24992d<_0x213cd8['length'];_0x24992d++){_0x111ef7[_0x24992d]=_0x213cd8[_0x24992d][_0x1a7103],_0x250754[_0x24992d]=[];for(var _0xbb9c1c=0x0;_0xbb9c1c<_0x1a7103;_0xbb9c1c++)_0x250754[_0x24992d][_0xbb9c1c]=_0x213cd8[_0x24992d][_0xbb9c1c]/_0x111ef7[_0x24992d];}var _0x260bc4=this[_0x3f73ab(0x1df)](_0x250754,_0x1b82cf);return{'controlPoints':_0x250754,'knots':_0x260bc4,'weights':_0x111ef7,'degree':_0x1b82cf};},'split_curve':function(_0x15e5c1,_0x111e87,_0x169bcb,_0x5e32dd,_0x474efb){const _0x38da1a=a0_0x3aa890;_0x5e32dd||(_0x5e32dd=new Array(_0x15e5c1[_0x38da1a(0x1d8)])[_0x38da1a(0x1c6)](0x1));for(var _0x34d16a=[_0x111e87,_0x169bcb[_0x38da1a(0x1d8)]-0x1-_0x111e87],_0x2d2919=_0x169bcb[_0x34d16a[0x0]],_0x9e3c67=_0x169bcb[_0x34d16a[0x1]],_0x3747dc=_0x474efb*(_0x9e3c67-_0x2d2919)+_0x2d2919,_0x5e97ac={'controlPoints':_0x15e5c1,'knots':_0x169bcb,'weights':_0x5e32dd,'degree':_0x111e87},_0x1e69b3=0x0;_0x1e69b3<_0x111e87;_0x1e69b3++)_0x5e97ac=this[_0x38da1a(0x1d6)](_0x5e97ac[_0x38da1a(0x1a4)],_0x111e87,_0x5e97ac['knots'],_0x5e97ac[_0x38da1a(0x1a3)],_0x3747dc);for(var _0x133dc0=0x0,_0x1e69b3=0x0;_0x1e69b3<_0x5e97ac['knots'][_0x38da1a(0x1d8)];_0x1e69b3++)if(_0x5e97ac[_0x38da1a(0x18d)][_0x1e69b3]===_0x3747dc){_0x133dc0=_0x1e69b3-_0x111e87;break;}var _0x504f55=_0x5e97ac['controlPoints'][_0x38da1a(0x1f4)](0x0,_0x133dc0+0x1),_0xae29da=_0x5e97ac[_0x38da1a(0x1a3)][_0x38da1a(0x1f4)](0x0,_0x133dc0+0x1),_0x3fa884=this[_0x38da1a(0x1df)](_0x504f55,_0x111e87),_0x5bf36a=_0x5e97ac[_0x38da1a(0x1a4)][_0x38da1a(0x1f4)](_0x133dc0),_0x195d22=_0x5e97ac['weights']['slice'](_0x133dc0),_0x18fe44=this[_0x38da1a(0x1df)](_0x5bf36a,_0x111e87);return{'left':{'controlPoints':_0x504f55,'knots':_0x3fa884,'weights':_0xae29da,'degree':_0x111e87},'right':{'controlPoints':_0x5bf36a,'knots':_0x18fe44,'weights':_0x195d22,'degree':_0x111e87}};},'create_arc':function(_0x253b34,_0xe6c451,_0xe3700e,_0x1292f7,_0x37cd19){const _0x247395=a0_0x3aa890;_0x37cd19=_0x37cd19||[0x0,0x0,0x1];var _0x8d1c6=_0x1292f7-_0xe3700e;_0x8d1c6<0x0&&(_0x8d1c6+=0x2*Math['PI']);for(var _0x285add=Math[_0x247395(0x193)](_0x8d1c6/(Math['PI']/0x2)),_0x5044a3=_0x8d1c6/_0x285add,_0x55beb0=[],_0x3d747f=[],_0x40ebe0=Math[_0x247395(0x1d0)](_0x5044a3/0x2),_0x322252=0x0;_0x322252<=_0x285add;_0x322252++){var _0xe54831=_0xe3700e+_0x322252*_0x5044a3,_0x57058c=_0x253b34[0x0]+_0xe6c451*Math[_0x247395(0x1d0)](_0xe54831),_0x3bb698=_0x253b34[0x1]+_0xe6c451*Math[_0x247395(0x1f0)](_0xe54831),_0x251a7b=_0x253b34[0x2]||0x0;if(_0x55beb0[_0x247395(0x1e4)]([_0x57058c,_0x3bb698,_0x251a7b]),_0x3d747f[_0x247395(0x1e4)](0x1),_0x322252<_0x285add){var _0x5769b1=_0xe54831+_0x5044a3/0x2,_0x195d7b=_0xe6c451/Math[_0x247395(0x1d0)](_0x5044a3/0x2),_0x33d067=_0x253b34[0x0]+_0x195d7b*Math[_0x247395(0x1d0)](_0x5769b1),_0x2beed6=_0x253b34[0x1]+_0x195d7b*Math[_0x247395(0x1f0)](_0x5769b1),_0x114952=_0x253b34[0x2]||0x0;_0x55beb0[_0x247395(0x1e4)]([_0x33d067,_0x2beed6,_0x114952]),_0x3d747f[_0x247395(0x1e4)](_0x40ebe0);}}var _0x6d40ab=0x2,_0xdb2096=this[_0x247395(0x1df)](_0x55beb0,_0x6d40ab);return{'controlPoints':_0x55beb0,'knots':_0xdb2096,'weights':_0x3d747f,'degree':_0x6d40ab};},'create_circle':function(_0x2e073f,_0x274ad4,_0x55ac87){const _0x13eadf=a0_0x3aa890;return this[_0x13eadf(0x214)](_0x2e073f,_0x274ad4,0x0,0x2*Math['PI'],_0x55ac87);}},K={'_gaussJ':{'solve':function(_0x14653e,_0x1b6db3){const _0x5e70f4=a0_0x3aa890;let _0x48f4fe=_0x14653e[_0x5e70f4(0x1d8)];for(let _0x22c48f=0x0;_0x22c48f<_0x48f4fe;_0x22c48f++){let _0x32a5be=0x0,_0x13d2d2=Number[_0x5e70f4(0x1b2)];for(let _0xe3876f=_0x22c48f;_0xe3876f<_0x48f4fe;_0xe3876f++)Math[_0x5e70f4(0x21a)](_0x14653e[_0xe3876f][_0x22c48f])>_0x13d2d2&&(_0x32a5be=_0xe3876f,_0x13d2d2=Math[_0x5e70f4(0x21a)](_0x14653e[_0xe3876f][_0x22c48f]));this[_0x5e70f4(0x1dd)](_0x14653e,_0x22c48f,_0x32a5be);for(let _0x1637c2=_0x22c48f+0x1;_0x1637c2<_0x48f4fe;_0x1637c2++){let _0x18b02a=_0x14653e[_0x1637c2][_0x22c48f]/_0x14653e[_0x22c48f][_0x22c48f];for(let _0x286e45=_0x22c48f;_0x286e45<_0x48f4fe+0x1;_0x286e45++)_0x14653e[_0x1637c2][_0x286e45]-=_0x14653e[_0x22c48f][_0x286e45]*_0x18b02a;}}for(let _0xa5fd23=_0x48f4fe-0x1;_0xa5fd23>=0x0;_0xa5fd23--){let _0x41def0=_0x14653e[_0xa5fd23][_0x48f4fe]/_0x14653e[_0xa5fd23][_0xa5fd23];_0x1b6db3[_0xa5fd23]=_0x41def0;for(let _0x5361be=_0xa5fd23-0x1;_0x5361be>=0x0;_0x5361be--)_0x14653e[_0x5361be][_0x48f4fe]-=_0x14653e[_0x5361be][_0xa5fd23]*_0x41def0,_0x14653e[_0x5361be][_0xa5fd23]=0x0;}},'zerosMat':function(_0x10145d,_0x3eaf6b){let _0x1b43d2=[];for(let _0x21937e=0x0;_0x21937e<_0x10145d;_0x21937e++)_0x1b43d2['push'](new Array(_0x3eaf6b)['fill'](0x0));return _0x1b43d2;},'printMat':function(_0x1ca44e){const _0x197c6e=a0_0x3aa890;_0x1ca44e[_0x197c6e(0x1b3)](_0x179222=>console['log'](_0x179222));},'swapRows':function(_0x2b8afb,_0x247c5a,_0x34caec){let _0x10dd54=_0x2b8afb[_0x247c5a];_0x2b8afb[_0x247c5a]=_0x2b8afb[_0x34caec],_0x2b8afb[_0x34caec]=_0x10dd54;}},'getNaturalKs':function(_0x89ba2e,_0x21b851,_0x544576){const _0x5381a4=a0_0x3aa890;let _0x732c1b=_0x89ba2e[_0x5381a4(0x1d8)]-0x1,_0x7393ce=this[_0x5381a4(0x1ff)][_0x5381a4(0x17c)](_0x732c1b+0x1,_0x732c1b+0x2);for(let _0x51b478=0x1;_0x51b478<_0x732c1b;_0x51b478++)_0x7393ce[_0x51b478][_0x51b478-0x1]=0x1/(_0x89ba2e[_0x51b478]-_0x89ba2e[_0x51b478-0x1]),_0x7393ce[_0x51b478][_0x51b478]=0x2*(0x1/(_0x89ba2e[_0x51b478]-_0x89ba2e[_0x51b478-0x1])+0x1/(_0x89ba2e[_0x51b478+0x1]-_0x89ba2e[_0x51b478])),_0x7393ce[_0x51b478][_0x51b478+0x1]=0x1/(_0x89ba2e[_0x51b478+0x1]-_0x89ba2e[_0x51b478]),_0x7393ce[_0x51b478][_0x732c1b+0x1]=0x3*((_0x21b851[_0x51b478]-_0x21b851[_0x51b478-0x1])/(_0x89ba2e[_0x51b478]-_0x89ba2e[_0x51b478-0x1])**0x2+(_0x21b851[_0x51b478+0x1]-_0x21b851[_0x51b478])/(_0x89ba2e[_0x51b478+0x1]-_0x89ba2e[_0x51b478])**0x2);_0x7393ce[0x0][0x0]=0x2/(_0x89ba2e[0x1]-_0x89ba2e[0x0]),_0x7393ce[0x0][0x1]=0x1/(_0x89ba2e[0x1]-_0x89ba2e[0x0]),_0x7393ce[0x0][_0x732c1b+0x1]=0x3*(_0x21b851[0x1]-_0x21b851[0x0])/(_0x89ba2e[0x1]-_0x89ba2e[0x0])**0x2,_0x7393ce[_0x732c1b][_0x732c1b-0x1]=0x1/(_0x89ba2e[_0x732c1b]-_0x89ba2e[_0x732c1b-0x1]),_0x7393ce[_0x732c1b][_0x732c1b]=0x2/(_0x89ba2e[_0x732c1b]-_0x89ba2e[_0x732c1b-0x1]),_0x7393ce[_0x732c1b][_0x732c1b+0x1]=0x3*(_0x21b851[_0x732c1b]-_0x21b851[_0x732c1b-0x1])/(_0x89ba2e[_0x732c1b]-_0x89ba2e[_0x732c1b-0x1])**0x2,this['_gaussJ']['solve'](_0x7393ce,_0x544576);},'from_control_points':function(_0x4d054a,_0x1f7416){const _0x44fcc1=a0_0x3aa890;let _0x1c49b0=_0x1f7416[_0x44fcc1(0x1a8)](_0x32e093=>_0x32e093[0x0]),_0x4e5ce2=_0x1f7416[_0x44fcc1(0x1a8)](_0x5e0ab3=>_0x5e0ab3[0x1]),_0x57cb6c=new Array(_0x1c49b0['length'])[_0x44fcc1(0x1c6)](0x0);this[_0x44fcc1(0x1f3)](_0x1c49b0,_0x4e5ce2,_0x57cb6c);let _0x3df2dd=[];for(let _0x5bbf3c of _0x4d054a){let _0x10af71=0x1;for(;_0x1c49b0[_0x10af71]<_0x5bbf3c;)_0x10af71++;let _0x45e325=(_0x5bbf3c-_0x1c49b0[_0x10af71-0x1])/(_0x1c49b0[_0x10af71]-_0x1c49b0[_0x10af71-0x1]),_0x2f3657=_0x57cb6c[_0x10af71-0x1]*(_0x1c49b0[_0x10af71]-_0x1c49b0[_0x10af71-0x1])-(_0x4e5ce2[_0x10af71]-_0x4e5ce2[_0x10af71-0x1]),_0xbd5697=-_0x57cb6c[_0x10af71]*(_0x1c49b0[_0x10af71]-_0x1c49b0[_0x10af71-0x1])+(_0x4e5ce2[_0x10af71]-_0x4e5ce2[_0x10af71-0x1]),_0x316d15=(0x1-_0x45e325)*_0x4e5ce2[_0x10af71-0x1]+_0x45e325*_0x4e5ce2[_0x10af71]+_0x45e325*(0x1-_0x45e325)*(_0x2f3657*(0x1-_0x45e325)+_0xbd5697*_0x45e325);_0x3df2dd[_0x44fcc1(0x1e4)]([_0x5bbf3c,_0x316d15]);}return _0x3df2dd;}},D=class{constructor(_0x24cca4){const _0x252f08=a0_0x3aa890;this[_0x252f08(0x20c)]=_0x24cca4,this[_0x252f08(0x1b9)]=[],this['cumulativeLength']=[0x0];for(let _0x30fc53=0x1;_0x30fc53<_0x24cca4[_0x252f08(0x1d8)];_0x30fc53++){let _0x2b2f54=_0x24cca4[_0x30fc53][0x0]-_0x24cca4[_0x30fc53-0x1][0x0],_0x11df9e=_0x24cca4[_0x30fc53][0x1]-_0x24cca4[_0x30fc53-0x1][0x1],_0x14e64a=_0x24cca4[_0x30fc53][0x2]-_0x24cca4[_0x30fc53-0x1][0x2],_0xd18e66=Math[_0x252f08(0x21c)](_0x2b2f54*_0x2b2f54+_0x11df9e*_0x11df9e+_0x14e64a*_0x14e64a);this[_0x252f08(0x1b9)][_0x252f08(0x1e4)](_0xd18e66),this[_0x252f08(0x217)][_0x252f08(0x1e4)](this[_0x252f08(0x217)][this[_0x252f08(0x217)][_0x252f08(0x1d8)]-0x1]+_0xd18e66);}this[_0x252f08(0x1cd)]=this['segmentLengths'][_0x252f08(0x1d8)]>0x0?this[_0x252f08(0x217)][this['cumulativeLength']['length']-0x1]:0x0;}[a0_0x3aa890(0x188)](_0x3db2b7){const _0x1da471=a0_0x3aa890;let _0x39de64=0x0,_0xc0bb63=Number[_0x1da471(0x1f7)];for(let _0x4d9c0=0x0;_0x4d9c0<this[_0x1da471(0x20c)][_0x1da471(0x1d8)]-0x1;_0x4d9c0++){let _0x59aa66=this[_0x1da471(0x20c)][_0x4d9c0],_0x2e684e=this[_0x1da471(0x20c)][_0x4d9c0+0x1],_0x37408f=_0x3db2b7,_0x456a72=[_0x2e684e[0x0]-_0x59aa66[0x0],_0x2e684e[0x1]-_0x59aa66[0x1],_0x2e684e[0x2]-_0x59aa66[0x2]],_0x4d096a=[_0x37408f[0x0]-_0x59aa66[0x0],_0x37408f[0x1]-_0x59aa66[0x1],_0x37408f[0x2]-_0x59aa66[0x2]],_0x5099d0=_0x456a72[0x0]*_0x456a72[0x0]+_0x456a72[0x1]*_0x456a72[0x1]+_0x456a72[0x2]*_0x456a72[0x2];if(_0x5099d0===0x0)continue;let _0x4fe805=(_0x4d096a[0x0]*_0x456a72[0x0]+_0x4d096a[0x1]*_0x456a72[0x1]+_0x4d096a[0x2]*_0x456a72[0x2])/_0x5099d0;_0x4fe805=Math['max'](0x0,Math['min'](0x1,_0x4fe805));let _0x5a80ac=[_0x59aa66[0x0]+_0x4fe805*_0x456a72[0x0],_0x59aa66[0x1]+_0x4fe805*_0x456a72[0x1],_0x59aa66[0x2]+_0x4fe805*_0x456a72[0x2]],_0x453788=Math['pow'](_0x37408f[0x0]-_0x5a80ac[0x0],0x2)+Math[_0x1da471(0x1ee)](_0x37408f[0x1]-_0x5a80ac[0x1],0x2)+Math[_0x1da471(0x1ee)](_0x37408f[0x2]-_0x5a80ac[0x2],0x2);_0x453788<_0xc0bb63&&(_0xc0bb63=_0x453788,_0x39de64=(this[_0x1da471(0x217)][_0x4d9c0]+_0x4fe805*this[_0x1da471(0x1b9)][_0x4d9c0])/this[_0x1da471(0x1cd)]);}return _0x39de64;}[a0_0x3aa890(0x1da)](_0x544149){const _0x5af43a=a0_0x3aa890;if(_0x544149<=0x0)return[...this[_0x5af43a(0x20c)][0x0]];if(_0x544149>=0x1)return[...this[_0x5af43a(0x20c)][this[_0x5af43a(0x20c)]['length']-0x1]];let _0x4e8e2b=_0x544149*this[_0x5af43a(0x1cd)];for(let _0x532a47=0x0;_0x532a47<this[_0x5af43a(0x217)][_0x5af43a(0x1d8)]-0x1;_0x532a47++)if(this['cumulativeLength'][_0x532a47]<=_0x4e8e2b&&_0x4e8e2b<=this[_0x5af43a(0x217)][_0x532a47+0x1]){let _0x23f4fb=(_0x4e8e2b-this[_0x5af43a(0x217)][_0x532a47])/this[_0x5af43a(0x1b9)][_0x532a47],_0x2b722e=this[_0x5af43a(0x20c)][_0x532a47],_0x43ba7c=this['points'][_0x532a47+0x1],_0x399f96=(0x1-_0x23f4fb)*_0x2b722e[0x0]+_0x23f4fb*_0x43ba7c[0x0],_0x2a4371=(0x1-_0x23f4fb)*_0x2b722e[0x1]+_0x23f4fb*_0x43ba7c[0x1],_0x196def=(0x1-_0x23f4fb)*_0x2b722e[0x2]+_0x23f4fb*_0x43ba7c[0x2];return[_0x399f96,_0x2a4371,_0x196def];}return[...this['points'][this[_0x5af43a(0x20c)]['length']-0x1]];}},H={'_formatNumber':function(_0xd28f26){const _0xdfd948=a0_0x3aa890;return Number[_0xdfd948(0x211)](_0xd28f26)?_0xd28f26[_0xdfd948(0x1c8)]():Math[_0xdfd948(0x21a)](_0xd28f26)<0.001||Math[_0xdfd948(0x21a)](_0xd28f26)>0xf4240?_0xd28f26[_0xdfd948(0x194)](0x6):_0xd28f26[_0xdfd948(0x1e0)](0x6)[_0xdfd948(0x176)](/\.?0+$/,'');},'_toHollerith':function(_0x46e70b){return _0x46e70b?_0x46e70b['length']+'H'+_0x46e70b:'0H';},'_generateGlobalSection':function(_0x29f498){const _0x565c6a=a0_0x3aa890;let _0x847b5e=new Date()[_0x565c6a(0x1e8)]()[_0x565c6a(0x1f4)](0x0,0x13)[_0x565c6a(0x176)](/[-:]/g,'')['replace']('T','.'),_0x1f538e=[_0x565c6a(0x17a),'1H;',this[_0x565c6a(0x1f6)](_0x29f498[_0x565c6a(0x1f2)]),this[_0x565c6a(0x1f6)](_0x29f498[_0x565c6a(0x1f2)]),this[_0x565c6a(0x1f6)](_0x29f498[_0x565c6a(0x210)]),this[_0x565c6a(0x1f6)]('js3d\x201.0'),'32','38','6',_0x565c6a(0x186),'15',this[_0x565c6a(0x1f6)](_0x29f498['filename']),_0x565c6a(0x207),'3',this[_0x565c6a(0x1f6)](_0x29f498[_0x565c6a(0x1ae)]['toUpperCase']()),'1','0.01',this[_0x565c6a(0x1f6)](_0x847b5e),_0x565c6a(0x18c),_0x565c6a(0x1c2),this['_toHollerith'](_0x29f498[_0x565c6a(0x205)]),this[_0x565c6a(0x1f6)](_0x29f498[_0x565c6a(0x210)]),'11','0',this[_0x565c6a(0x1f6)](_0x847b5e)]['join'](',')+';',_0x254b96='',_0x35f42c=0x1,_0x392c95=0x0;for(;_0x392c95<_0x1f538e[_0x565c6a(0x1d8)];){let _0x40aa66=_0x1f538e[_0x565c6a(0x19c)](_0x392c95,0x48);_0x254b96+=_0x40aa66[_0x565c6a(0x1d1)](0x48)+('G'+_0x35f42c[_0x565c6a(0x1c8)]()[_0x565c6a(0x1b6)](0x7)+'\x0a'),_0x392c95+=0x48,_0x35f42c++;}return _0x254b96;},'_formatDirectoryLine':function(_0x1d8971,_0x288414,_0x406766,_0x1f8ec9,_0x4e6903,_0x5b8c55,_0x344cb7,_0x2c4348,_0x48ccba){const _0x2706d4=a0_0x3aa890;return[_0x1d8971[_0x2706d4(0x1c8)]()[_0x2706d4(0x1b6)](0x8),_0x288414[_0x2706d4(0x1c8)]()[_0x2706d4(0x1b6)](0x8),_0x406766[_0x2706d4(0x1c8)]()['padStart'](0x8),_0x1f8ec9[_0x2706d4(0x1c8)]()['padStart'](0x8),_0x4e6903[_0x2706d4(0x1c8)]()[_0x2706d4(0x1b6)](0x8),_0x5b8c55[_0x2706d4(0x1c8)]()[_0x2706d4(0x1b6)](0x8),_0x344cb7['toString']()[_0x2706d4(0x1b6)](0x8),_0x2c4348[_0x2706d4(0x1c8)]()[_0x2706d4(0x1b6)](0x8)][_0x2706d4(0x19b)]('')[_0x2706d4(0x1d1)](0x48)+('D'+_0x48ccba[_0x2706d4(0x1c8)]()[_0x2706d4(0x1b6)](0x7)+'\x0a');},'_formatParameterLine':function(_0x2fb47d,_0x319a4a,_0x4d29bf){const _0x4ba5c0=a0_0x3aa890;let _0x59bc1d='',_0x2294f8=_0x319a4a,_0x543a50=0x0;for(;_0x543a50<_0x2fb47d[_0x4ba5c0(0x1d8)];){let _0xdc7eb7=Math['min'](_0x543a50+0x40,_0x2fb47d[_0x4ba5c0(0x1d8)]);if(_0xdc7eb7<_0x2fb47d[_0x4ba5c0(0x1d8)]&&_0x2fb47d[_0xdc7eb7]!==','){let _0x1e5348=_0x2fb47d['lastIndexOf'](',',_0xdc7eb7);_0x1e5348>_0x543a50&&(_0xdc7eb7=_0x1e5348+0x1);}let _0x2bf5e2=_0x2fb47d['substring'](_0x543a50,_0xdc7eb7);_0x59bc1d+=_0x2bf5e2[_0x4ba5c0(0x1d1)](0x40)+('\x20'+_0x4d29bf['toString']()[_0x4ba5c0(0x1b6)](0x7)+'P'+_0x2294f8[_0x4ba5c0(0x1c8)]()[_0x4ba5c0(0x1b6)](0x7)+'\x0a'),_0x543a50=_0xdc7eb7,_0x2294f8++;}return _0x59bc1d;},'_formatSection':function(_0x34d97b,_0x241320){const _0x1d7505=a0_0x3aa890;return _0x241320[_0x1d7505(0x1a8)]((_0x1a61b2,_0x50221a)=>_0x1a61b2[_0x1d7505(0x176)](/\n$/,'')+'\x0a')[_0x1d7505(0x19b)]('');},'_formatTerminateSection':function(_0x343785,_0x3e2e11,_0x2195ae,_0xd37375){const _0xbe580=a0_0x3aa890;return['S'+_0x343785[_0xbe580(0x1c8)]()[_0xbe580(0x1b6)](0x7),'G'+_0x3e2e11['toString']()[_0xbe580(0x1b6)](0x7),'D'+_0x2195ae['toString']()[_0xbe580(0x1b6)](0x7),'P'+_0xd37375[_0xbe580(0x1c8)]()[_0xbe580(0x1b6)](0x7)][_0xbe580(0x19b)]('')[_0xbe580(0x1d1)](0x48)+'T\x20\x20\x20\x20\x20\x201\x0a';},'_createPointEntity':function(_0x282b61,_0x1bf774,_0x321c57){const _0x298517=a0_0x3aa890;let _0x26de68=_0x298517(0x1c3)+this[_0x298517(0x1d3)](_0x282b61[0x0])+','+this[_0x298517(0x1d3)](_0x282b61[0x1])+','+this[_0x298517(0x1d3)](_0x282b61[0x2])+_0x298517(0x1cb),_0xf8de0c=_0x1bf774,_0x51894e=this[_0x298517(0x1bd)](_0x26de68,_0x321c57,_0xf8de0c),_0x5599c0=_0x51894e[_0x298517(0x1c4)]('\x0a')[_0x298517(0x1d8)]-0x1,_0x13d811=this[_0x298517(0x1c5)](0x74,_0x321c57,0x0,0x0,0x0,0x0,0x0,0x0,_0x1bf774);return _0x13d811+=this['_formatDirectoryLine'](0x74,0x0,0x0,_0x5599c0,0x0,0x0,0x0,0x0,_0x1bf774+0x1),{'directoryEntry':_0x13d811,'parameterEntry':_0x51894e,'lineCount':_0x5599c0};},'_createPolylineEntity':function(_0x5acbf7,_0x4235ba,_0x308b1c){const _0x3bc1f4=a0_0x3aa890;let _0x8f654e=_0x3bc1f4(0x1e5)+(_0x5acbf7[_0x3bc1f4(0x1d8)]-0x1);for(let _0x59a207=0x0;_0x59a207<_0x5acbf7[_0x3bc1f4(0x1d8)];_0x59a207++){let _0x311b23=_0x5acbf7[_0x59a207];_0x8f654e+=','+this['_formatNumber'](_0x311b23[0x0])+','+this[_0x3bc1f4(0x1d3)](_0x311b23[0x1])+','+this['_formatNumber'](_0x311b23[0x2]);}_0x8f654e+=';';let _0x1109ab=_0x4235ba,_0x4f74a1=this[_0x3bc1f4(0x1bd)](_0x8f654e,_0x308b1c,_0x1109ab),_0x5e7bf7=_0x4f74a1[_0x3bc1f4(0x1c4)]('\x0a')[_0x3bc1f4(0x1d8)]-0x1,_0x5f18e0=this[_0x3bc1f4(0x1c5)](0x6a,_0x308b1c,0x0,0x0,0x0,0x0,0x0,0x0,_0x4235ba);return _0x5f18e0+=this['_formatDirectoryLine'](0x6a,0x0,0x0,_0x5e7bf7,0x0,0x0,0x0,0x0,_0x4235ba+0x1),{'directoryEntry':_0x5f18e0,'parameterEntry':_0x4f74a1,'lineCount':_0x5e7bf7};},'_createNurbsCurveEntity':function(_0x21d6c7,_0xb47a90,_0x42f91a,_0x5294e7,_0x25aee3,_0x19386a){const _0x37eea6=a0_0x3aa890;let _0x115f7c=_0x37eea6(0x1d9)+(_0x21d6c7[_0x37eea6(0x1d8)]-0x1)+','+_0x5294e7+_0x37eea6(0x1e3);for(let _0x54db75 of _0x42f91a)_0x115f7c+=','+this['_formatNumber'](_0x54db75);for(let _0x1031a0 of _0xb47a90)_0x115f7c+=','+this[_0x37eea6(0x1d3)](_0x1031a0);for(let _0x1ad004=0x0;_0x1ad004<_0x21d6c7[_0x37eea6(0x1d8)];_0x1ad004++){let _0x35c170=_0x21d6c7[_0x1ad004];_0x115f7c+=','+this[_0x37eea6(0x1d3)](_0x35c170[0x0])+','+this[_0x37eea6(0x1d3)](_0x35c170[0x1])+','+this[_0x37eea6(0x1d3)](_0x35c170[0x2]);}_0x115f7c+=','+this[_0x37eea6(0x1d3)](_0x42f91a[0x0])+','+this[_0x37eea6(0x1d3)](_0x42f91a[_0x42f91a[_0x37eea6(0x1d8)]-0x1]),_0x115f7c+=_0x37eea6(0x20b),_0x115f7c+=';';let _0x41307b=_0x25aee3,_0x400726=this[_0x37eea6(0x1bd)](_0x115f7c,_0x19386a,_0x41307b),_0x34faa9=_0x400726[_0x37eea6(0x1c4)]('\x0a')['length']-0x1,_0x1a0030=this[_0x37eea6(0x1c5)](0x7e,_0x19386a,0x0,0x0,0x0,0x0,0x0,0x0,_0x25aee3);return _0x1a0030+=this[_0x37eea6(0x1c5)](0x7e,0x0,0x0,_0x34faa9,0x0,0x0,0x0,0x0,_0x25aee3+0x1),{'directoryEntry':_0x1a0030,'parameterEntry':_0x400726,'lineCount':_0x34faa9};},'_createNurbsSurfaceEntity':function(_0x368ddb,_0x18c260,_0x203bfc,_0x35149a,_0xfc4bf8,_0x31164c,_0x53e7bc,_0x11c6ed){const _0x1973bd=a0_0x3aa890;let _0x50e3b5=_0x368ddb[_0x1973bd(0x1d8)],_0x40670e=_0x368ddb[0x0][_0x1973bd(0x1d8)],_0x485e53=_0x50e3b5-0x1,_0x6245dd=_0x40670e-0x1,_0x33ceb9=_0x1973bd(0x1fc)+_0x485e53+','+_0x6245dd+','+_0xfc4bf8+','+_0x31164c+_0x1973bd(0x1a5);for(let _0x37e381 of _0x203bfc)_0x33ceb9+=','+this['_formatNumber'](_0x37e381);for(let _0xb4648b of _0x35149a)_0x33ceb9+=','+this[_0x1973bd(0x1d3)](_0xb4648b);for(let _0x434afc=0x0;_0x434afc<=_0x6245dd;_0x434afc++)for(let _0x237673=0x0;_0x237673<=_0x485e53;_0x237673++)_0x33ceb9+=','+this[_0x1973bd(0x1d3)](_0x18c260[_0x237673][_0x434afc]);for(let _0x5e63f8=0x0;_0x5e63f8<=_0x6245dd;_0x5e63f8++)for(let _0x16cf0b=0x0;_0x16cf0b<=_0x485e53;_0x16cf0b++){let _0x1ec1f5=_0x368ddb[_0x16cf0b][_0x5e63f8];_0x33ceb9+=','+this[_0x1973bd(0x1d3)](_0x1ec1f5[0x0])+','+this[_0x1973bd(0x1d3)](_0x1ec1f5[0x1])+','+this[_0x1973bd(0x1d3)](_0x1ec1f5[0x2]);}_0x33ceb9+=','+this[_0x1973bd(0x1d3)](_0x203bfc[0x0])+','+this[_0x1973bd(0x1d3)](_0x203bfc[_0x203bfc[_0x1973bd(0x1d8)]-0x1]),_0x33ceb9+=','+this[_0x1973bd(0x1d3)](_0x35149a[0x0])+','+this[_0x1973bd(0x1d3)](_0x35149a[_0x35149a[_0x1973bd(0x1d8)]-0x1]),_0x33ceb9+=';';let _0x1b2512=_0x53e7bc,_0x443e7b=this[_0x1973bd(0x1bd)](_0x33ceb9,_0x11c6ed,_0x1b2512),_0x1fb08f=_0x443e7b[_0x1973bd(0x1c4)]('\x0a')[_0x1973bd(0x1d8)]-0x1,_0x22d171=this[_0x1973bd(0x1c5)](0x80,_0x11c6ed,0x0,0x0,0x0,0x0,0x0,0x0,_0x53e7bc);return _0x22d171+=this[_0x1973bd(0x1c5)](0x80,0x0,0x0,_0x1fb08f,0x0,0x0,0x0,0x0,_0x53e7bc+0x1),{'directoryEntry':_0x22d171,'parameterEntry':_0x443e7b,'lineCount':_0x1fb08f};},'nurbsSurfaceToIges':function(_0x517907,_0x28cc1e={}){const _0xc54968=a0_0x3aa890;let _0x414142={'units':'MM','filename':'nurbs_surface.iges','author':'js3d','organization':'D3','degreeU':0x3,'degreeV':0x3,'weights':null,'knotsU':null,'knotsV':null,..._0x28cc1e};if(!Array[_0xc54968(0x199)](_0x517907)||_0x517907[_0xc54968(0x1d8)]===0x0||!Array[_0xc54968(0x199)](_0x517907[0x0]))throw new Error(_0xc54968(0x1c0));let _0x5efb13=_0x517907[_0xc54968(0x1d8)],_0x54b8ec=_0x517907[0x0][_0xc54968(0x1d8)];if(_0x5efb13<_0x414142[_0xc54968(0x19a)]+0x1||_0x54b8ec<_0x414142[_0xc54968(0x1f5)]+0x1)throw new Error(_0xc54968(0x1a1));let _0x5d5a29=_0x517907[_0xc54968(0x1a8)](_0x57bc50=>_0x57bc50[_0xc54968(0x1a8)](_0x5834c7=>{const _0x5ab5f3=_0xc54968;if(!Array[_0x5ab5f3(0x199)](_0x5834c7)||_0x5834c7[_0x5ab5f3(0x1d8)]<0x2)throw new Error(_0x5ab5f3(0x1fd));return[_0x5834c7[0x0]||0x0,_0x5834c7[0x1]||0x0,_0x5834c7[0x2]||0x0];})),_0x1610fb=_0x414142[_0xc54968(0x1a3)];_0x1610fb||(_0x1610fb=new Array(_0x5efb13)[_0xc54968(0x1c6)](0x0)[_0xc54968(0x1a8)](()=>new Array(_0x54b8ec)[_0xc54968(0x1c6)](0x1)));let _0xdae9d1=_0x414142[_0xc54968(0x1fe)];_0xdae9d1||(_0xdae9d1=T[_0xc54968(0x179)](_0x5efb13,_0x414142['degreeU']));let _0x9f53eb=_0x414142[_0xc54968(0x20e)];_0x9f53eb||(_0x9f53eb=T[_0xc54968(0x179)](_0x54b8ec,_0x414142[_0xc54968(0x1f5)]));let _0x581281='',_0x2851c7='',_0x226798='',_0x5534d8=0x1,_0x234e7a=0x1;_0x581281=this['_generateGlobalSection'](_0x414142);let _0x380f8d=this[_0xc54968(0x208)](_0x5d5a29,_0x1610fb,_0xdae9d1,_0x9f53eb,_0x414142[_0xc54968(0x19a)],_0x414142[_0xc54968(0x1f5)],_0x234e7a,_0x5534d8);_0x2851c7+=_0x380f8d['directoryEntry'],_0x226798+=_0x380f8d['parameterEntry'],_0x234e7a+=0x2,_0x5534d8+=_0x380f8d[_0xc54968(0x202)];let _0x186fd5=this[_0xc54968(0x1db)](_0xc54968(0x19e),[_0xc54968(0x1a7),_0xc54968(0x1e9)]),_0x1b6a9d=this['_formatTerminateSection'](_0x186fd5['split']('\x0a')['length']-0x1,_0x581281[_0xc54968(0x1c4)]('\x0a')['length']-0x1,_0x2851c7[_0xc54968(0x1c4)]('\x0a')[_0xc54968(0x1d8)]-0x1,_0x226798['split']('\x0a')[_0xc54968(0x1d8)]-0x1);return _0x186fd5+_0x581281+_0x2851c7+_0x226798+_0x1b6a9d;},'geometryToIges':function(_0x5ad8de,_0xf95b2c={}){const _0x3f12d1=a0_0x3aa890;let _0x5ec3df={'units':'MM','filename':_0x3f12d1(0x1ac),'author':_0x3f12d1(0x1a0),'organization':'D3',..._0xf95b2c};if(!Array[_0x3f12d1(0x199)](_0x5ad8de)||_0x5ad8de[_0x3f12d1(0x1d8)]===0x0)throw new Error(_0x3f12d1(0x174));let _0x4f49b9='',_0x1ae494='',_0xb77d40='',_0x24f7ee=0x1,_0x2b67b9=0x1,_0x2ddc9a=0x0;_0x4f49b9=this[_0x3f12d1(0x19f)](_0x5ec3df);for(let _0x2b160a of _0x5ad8de){if(!_0x2b160a||typeof _0x2b160a!=_0x3f12d1(0x218)||!_0x2b160a[_0x3f12d1(0x18b)]||!_0x2b160a[_0x3f12d1(0x215)])throw new Error(_0x3f12d1(0x213));let _0x7b2c1b=_0x2b160a['type'],_0x344405=_0x2b160a['data'],_0x89c172;if(_0x7b2c1b==='nurbsSurface'?_0x89c172=_0x344405['map'](_0x11ddb8=>_0x11ddb8['map'](_0x10d77a=>{const _0x4cc6d5=_0x3f12d1;if(!Array[_0x4cc6d5(0x199)](_0x10d77a)||_0x10d77a[_0x4cc6d5(0x1d8)]<0x2)throw new Error(_0x4cc6d5(0x1ef));return[_0x10d77a[0x0]||0x0,_0x10d77a[0x1]||0x0,_0x10d77a[0x2]||0x0];})):_0x89c172=_0x344405[_0x3f12d1(0x1a8)](_0x14c85e=>{const _0x2f7bff=_0x3f12d1;if(!Array['isArray'](_0x14c85e)||_0x14c85e['length']<0x2)throw new Error(_0x2f7bff(0x1ef));return[_0x14c85e[0x0]||0x0,_0x14c85e[0x1]||0x0,_0x14c85e[0x2]||0x0];}),_0x89c172[_0x3f12d1(0x1d8)]!==0x0)switch(_0x7b2c1b){case'points':for(let _0x3c7558 of _0x89c172){_0x2ddc9a++;let _0x12c2e1=this[_0x3f12d1(0x1bb)](_0x3c7558,_0x2b67b9,_0x24f7ee);_0x1ae494+=_0x12c2e1[_0x3f12d1(0x1f8)],_0xb77d40+=_0x12c2e1[_0x3f12d1(0x187)],_0x2b67b9+=0x2,_0x24f7ee+=_0x12c2e1[_0x3f12d1(0x202)];}break;case'polyline':if(_0x89c172[_0x3f12d1(0x1d8)]>0x1){_0x2ddc9a++;let _0x162b6c=this[_0x3f12d1(0x1f1)](_0x89c172,_0x2b67b9,_0x24f7ee);_0x1ae494+=_0x162b6c[_0x3f12d1(0x1f8)],_0xb77d40+=_0x162b6c[_0x3f12d1(0x187)],_0x2b67b9+=0x2,_0x24f7ee+=_0x162b6c['lineCount'];}break;case _0x3f12d1(0x1c1):let _0x556d12=_0x2b160a[_0x3f12d1(0x177)]||0x3,_0x47aaa6=_0x89c172[_0x3f12d1(0x1d8)];if(_0x47aaa6<_0x556d12+0x1){console[_0x3f12d1(0x17d)](_0x3f12d1(0x1e1)+(_0x556d12+0x1)+_0x3f12d1(0x216)+_0x556d12);continue;}let _0x36dbf4=_0x2b160a[_0x3f12d1(0x1a3)]||new Array(_0x47aaa6)[_0x3f12d1(0x1c6)](0x1);if(_0x36dbf4['length']!==_0x47aaa6)throw new Error(_0x3f12d1(0x203));let _0x1c64fe=_0x2b160a[_0x3f12d1(0x18d)];_0x1c64fe||(_0x1c64fe=T[_0x3f12d1(0x179)](_0x47aaa6,_0x556d12));let _0x4313d3=_0x47aaa6+_0x556d12+0x1;if(_0x1c64fe[_0x3f12d1(0x1d8)]!==_0x4313d3)throw new Error('Invalid\x20knot\x20vector\x20length:\x20expected\x20'+_0x4313d3+_0x3f12d1(0x206)+_0x1c64fe[_0x3f12d1(0x1d8)]);_0x2ddc9a++;let _0x490d10=this['_createNurbsCurveEntity'](_0x89c172,_0x36dbf4,_0x1c64fe,_0x556d12,_0x2b67b9,_0x24f7ee);_0x1ae494+=_0x490d10['directoryEntry'],_0xb77d40+=_0x490d10['parameterEntry'],_0x2b67b9+=0x2,_0x24f7ee+=_0x490d10[_0x3f12d1(0x202)];break;case _0x3f12d1(0x175):let _0x14f972=_0x2b160a[_0x3f12d1(0x19a)]||0x3,_0x2c3860=_0x2b160a[_0x3f12d1(0x1f5)]||0x3,_0x4c7236=_0x89c172[_0x3f12d1(0x1d8)],_0x1bb2af=_0x89c172[0x0][_0x3f12d1(0x1d8)];if(_0x4c7236<_0x14f972+0x1||_0x1bb2af<_0x2c3860+0x1){console[_0x3f12d1(0x17d)]('Skipping\x20NURBS\x20surface:\x20insufficient\x20control\x20points'),console[_0x3f12d1(0x1af)](_0x4c7236,_0x14f972,_0x1bb2af,_0x2c3860);continue;}let _0x267232=_0x2b160a[_0x3f12d1(0x1a3)];_0x267232||(_0x267232=new Array(_0x4c7236)[_0x3f12d1(0x1c6)](0x0)[_0x3f12d1(0x1a8)](()=>new Array(_0x1bb2af)[_0x3f12d1(0x1c6)](0x1)));let _0x348081=_0x2b160a[_0x3f12d1(0x1fe)];_0x348081||(_0x348081=T[_0x3f12d1(0x179)](_0x4c7236,_0x14f972));let _0x1aefac=_0x2b160a['knotsV'];_0x1aefac||(_0x1aefac=T[_0x3f12d1(0x179)](_0x1bb2af,_0x2c3860)),_0x2ddc9a++;let _0x4fac32=this['_createNurbsSurfaceEntity'](_0x89c172,_0x267232,_0x348081,_0x1aefac,_0x14f972,_0x2c3860,_0x2b67b9,_0x24f7ee);_0x1ae494+=_0x4fac32[_0x3f12d1(0x1f8)],_0xb77d40+=_0x4fac32[_0x3f12d1(0x187)],_0x2b67b9+=0x2,_0x24f7ee+=_0x4fac32['lineCount'];break;default:throw new Error('Unknown\x20geometry\x20type:\x20'+_0x7b2c1b+'.\x20Supported\x20types:\x20points,\x20polyline,\x20nurbsCurve,\x20nurbsSurface');}}if(_0x2ddc9a===0x0)throw new Error(_0x3f12d1(0x1be));let _0x51b8ae=this[_0x3f12d1(0x1db)](_0x3f12d1(0x19e),['Generated\x20by\x20js3d\x20IGES\x20converter\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x201',_0x3f12d1(0x20a)]),_0x48cee5=this[_0x3f12d1(0x1d4)](_0x51b8ae[_0x3f12d1(0x1c4)]('\x0a')[_0x3f12d1(0x1d8)]-0x1,_0x4f49b9[_0x3f12d1(0x1c4)]('\x0a')[_0x3f12d1(0x1d8)]-0x1,_0x1ae494[_0x3f12d1(0x1c4)]('\x0a')[_0x3f12d1(0x1d8)]-0x1,_0xb77d40[_0x3f12d1(0x1c4)]('\x0a')[_0x3f12d1(0x1d8)]-0x1);return _0x51b8ae+_0x4f49b9+_0x1ae494+_0xb77d40+_0x48cee5;},'_parseIgesNumber':function(_0x592257){const _0x3a3c6a=a0_0x3aa890;if(!_0x592257||typeof _0x592257!=_0x3a3c6a(0x212))return 0x0;let _0x545cc1=_0x592257[_0x3a3c6a(0x1a2)]()['replace'](/D([+-]?\d+)/g,_0x3a3c6a(0x178)),_0x1710dd=parseFloat(_0x545cc1);return isNaN(_0x1710dd)?0x0:_0x1710dd;},'_processEntity':function(_0x425853,_0x4f97d7,_0x276a2c,_0x5850c5,_0x27c2c1){const _0x3d3d59=a0_0x3aa890;let _0x2aa32b=_0x425853[_0x3d3d59(0x176)](';','')['split'](',')[_0x3d3d59(0x1a8)](_0x5976d5=>_0x5976d5[_0x3d3d59(0x1a2)]());if(_0x2aa32b['length']===0x0)return;switch(parseInt(_0x2aa32b[0x0])){case 0x74:this['_processPointEntity'](_0x2aa32b,_0x276a2c);break;case 0x6a:this[_0x3d3d59(0x17b)](_0x2aa32b,_0x4f97d7);break;case 0x7e:this[_0x3d3d59(0x1ba)](_0x2aa32b,_0x5850c5);break;case 0x80:_0x27c2c1&&this[_0x3d3d59(0x1aa)](_0x2aa32b,_0x27c2c1);break;case 0x6e:this[_0x3d3d59(0x19d)](_0x2aa32b,_0x4f97d7);break;default:break;}},'_processPointEntity':function(_0x4588ae,_0x1fedc3){const _0x12b886=a0_0x3aa890;if(_0x4588ae['length']>=0x4){let _0x38f690=this[_0x12b886(0x1bf)](_0x4588ae[0x1]),_0x4f9bfd=this[_0x12b886(0x1bf)](_0x4588ae[0x2]),_0xbdb0a5=this[_0x12b886(0x1bf)](_0x4588ae[0x3]);_0x1fedc3[_0x12b886(0x1e4)]([_0x38f690,_0x4f9bfd,_0xbdb0a5]);}},'_processPolylineEntity':function(_0x5c5571,_0x58ae68){const _0x1003c6=a0_0x3aa890;if(_0x5c5571[_0x1003c6(0x1d8)]<0x2)return;let _0x4a9b6b=parseInt(_0x5c5571[0x1]),_0x58e305=0x2+(_0x4a9b6b+0x1)*0x3;if(_0x5c5571[_0x1003c6(0x1d8)]<_0x58e305)return;let _0x20ea1c=[];for(let _0x492e55=0x0;_0x492e55<=_0x4a9b6b;_0x492e55++){let _0x620151=0x2+_0x492e55*0x3;if(_0x620151+0x2<_0x5c5571[_0x1003c6(0x1d8)]){let _0x2e0db8=this[_0x1003c6(0x1bf)](_0x5c5571[_0x620151]),_0x385e3a=this[_0x1003c6(0x1bf)](_0x5c5571[_0x620151+0x1]),_0xc4be4e=this[_0x1003c6(0x1bf)](_0x5c5571[_0x620151+0x2]);_0x20ea1c[_0x1003c6(0x1e4)]([_0x2e0db8,_0x385e3a,_0xc4be4e]);}}_0x20ea1c['length']>0x1&&_0x58ae68[_0x1003c6(0x1e4)](_0x20ea1c);},'_processLineEntity':function(_0x24f208,_0x4da89f){const _0x3069f9=a0_0x3aa890;if(_0x24f208[_0x3069f9(0x1d8)]>=0x7){let _0x32b4d4=this[_0x3069f9(0x1bf)](_0x24f208[0x1]),_0x45ed3e=this[_0x3069f9(0x1bf)](_0x24f208[0x2]),_0x2a872d=this['_parseIgesNumber'](_0x24f208[0x3]),_0x2ed8f2=this[_0x3069f9(0x1bf)](_0x24f208[0x4]),_0x5a9960=this['_parseIgesNumber'](_0x24f208[0x5]),_0x5312f7=this[_0x3069f9(0x1bf)](_0x24f208[0x6]);_0x4da89f['push']([[_0x32b4d4,_0x45ed3e,_0x2a872d],[_0x2ed8f2,_0x5a9960,_0x5312f7]]);}},'_processNurbsCurveEntity':function(_0x2a706c,_0x34b0aa){const _0x4ced0b=a0_0x3aa890;if(_0x2a706c['length']<0x7)return;let _0x21c1fd=parseInt(_0x2a706c[0x1]),_0x22d629=parseInt(_0x2a706c[0x2]),_0x4ba91f=parseInt(_0x2a706c[0x3]),_0x42df52=parseInt(_0x2a706c[0x4]),_0x58b4c8=parseInt(_0x2a706c[0x5]),_0x511d0e=parseInt(_0x2a706c[0x6]),_0x2e5022=_0x21c1fd+0x1,_0x53bd9b=_0x21c1fd+_0x22d629+0x2,_0x20d273=0x7,_0x281bdb=_0x20d273+_0x53bd9b,_0x39f4f3=_0x281bdb+_0x2e5022+_0x2e5022+_0x2e5022+_0x2e5022+0x2;if(_0x2a706c[_0x4ced0b(0x1d8)]<_0x39f4f3+0x3)return;let _0x438bc0=[];for(let _0x34490b=0x0;_0x34490b<_0x53bd9b;_0x34490b++)_0x438bc0[_0x4ced0b(0x1e4)](this[_0x4ced0b(0x1bf)](_0x2a706c[_0x20d273+_0x34490b]));let _0x460e43=[];for(let _0x477b0a=0x0;_0x477b0a<_0x2e5022;_0x477b0a++)_0x460e43[_0x4ced0b(0x1e4)](this[_0x4ced0b(0x1bf)](_0x2a706c[_0x281bdb+_0x477b0a])||0x1);let _0x18cd23=[],_0x54263d=_0x281bdb+_0x2e5022,_0x2fa474=_0x54263d+_0x2e5022*0x3;if(_0x2a706c[_0x4ced0b(0x1d8)]>=_0x2fa474+0x5){for(let _0x489e01=0x0;_0x489e01<_0x2e5022;_0x489e01++){let _0x3a8433=_0x54263d+_0x489e01*0x3,_0x473dbe=this['_parseIgesNumber'](_0x2a706c[_0x3a8433]),_0x50024b=this[_0x4ced0b(0x1bf)](_0x2a706c[_0x3a8433+0x1]),_0x2c72df=this[_0x4ced0b(0x1bf)](_0x2a706c[_0x3a8433+0x2]);_0x18cd23['push']([_0x473dbe,_0x50024b,_0x2c72df]);}let _0x8ebd1e=_0x2fa474,_0x7b3aa5=_0x8ebd1e+0x2,_0x240564=this[_0x4ced0b(0x1bf)](_0x2a706c[_0x8ebd1e]),_0x4d33a6=this[_0x4ced0b(0x1bf)](_0x2a706c[_0x8ebd1e+0x1])||0x1,_0x45bf97=[this[_0x4ced0b(0x1bf)](_0x2a706c[_0x7b3aa5]),this[_0x4ced0b(0x1bf)](_0x2a706c[_0x7b3aa5+0x1]),this['_parseIgesNumber'](_0x2a706c[_0x7b3aa5+0x2])],_0x5f2026={'type':_0x4ced0b(0x1c1),'degree':_0x22d629,'controlPoints':_0x18cd23,'weights':_0x460e43,'knots':_0x438bc0,'parameterRange':[_0x240564,_0x4d33a6],'properties':{'planar':_0x4ba91f===0x1,'closed':_0x42df52===0x1,'rational':_0x58b4c8===0x1,'periodic':_0x511d0e===0x1},'normalVector':_0x45bf97,'numControlPoints':_0x2e5022,'numKnots':_0x53bd9b,'upperControlPointIndex':_0x21c1fd};_0x34b0aa[_0x4ced0b(0x1e4)](_0x5f2026);}else{let _0x3d3668=_0x281bdb+_0x2e5022,_0x2e0e02=_0x3d3668+_0x2e5022,_0x45af8f=_0x2e0e02+_0x2e5022,_0xc2b0bd=_0x45af8f+_0x2e5022,_0x33fe3d=_0xc2b0bd+0x2;if(_0x2a706c[_0x4ced0b(0x1d8)]<_0x33fe3d+0x3)return;for(let _0x103387=0x0;_0x103387<_0x2e5022;_0x103387++){let _0x19fdfa=this['_parseIgesNumber'](_0x2a706c[_0x3d3668+_0x103387]),_0xe5dad5=this[_0x4ced0b(0x1bf)](_0x2a706c[_0x2e0e02+_0x103387]),_0xa705e0=this[_0x4ced0b(0x1bf)](_0x2a706c[_0x45af8f+_0x103387]);_0x18cd23[_0x4ced0b(0x1e4)]([_0x19fdfa,_0xe5dad5,_0xa705e0]);}let _0x167071=this[_0x4ced0b(0x1bf)](_0x2a706c[_0xc2b0bd]),_0xed170f=this[_0x4ced0b(0x1bf)](_0x2a706c[_0xc2b0bd+0x1])||0x1,_0x388d28=[this[_0x4ced0b(0x1bf)](_0x2a706c[_0x33fe3d]),this[_0x4ced0b(0x1bf)](_0x2a706c[_0x33fe3d+0x1]),this[_0x4ced0b(0x1bf)](_0x2a706c[_0x33fe3d+0x2])],_0x3f5e1d={'type':_0x4ced0b(0x1c1),'degree':_0x22d629,'controlPoints':_0x18cd23,'weights':_0x460e43,'knots':_0x438bc0,'parameterRange':[_0x167071,_0xed170f],'properties':{'planar':_0x4ba91f===0x1,'closed':_0x42df52===0x1,'rational':_0x58b4c8===0x1,'periodic':_0x511d0e===0x1},'normalVector':_0x388d28,'numControlPoints':_0x2e5022,'numKnots':_0x53bd9b,'upperControlPointIndex':_0x21c1fd};_0x34b0aa['push'](_0x3f5e1d);}},'_processNurbsSurfaceEntity':function(_0x5078c3,_0x189d4a){const _0x48eab0=a0_0x3aa890;if(_0x5078c3[_0x48eab0(0x1d8)]<0xa)return;let _0x4b75ce=parseInt(_0x5078c3[0x1]),_0x285768=parseInt(_0x5078c3[0x2]),_0xc6725b=parseInt(_0x5078c3[0x3]),_0x1f5599=parseInt(_0x5078c3[0x4]),_0x978456=parseInt(_0x5078c3[0x5]),_0x2be36d=parseInt(_0x5078c3[0x6]),_0x9daa2b=parseInt(_0x5078c3[0x7]),_0x15ac6f=parseInt(_0x5078c3[0x8]),_0xc0b059=parseInt(_0x5078c3[0x9]),_0x3e6df8=_0x4b75ce+0x1,_0x3c42ec=_0x285768+0x1,_0x208bda=_0x4b75ce+_0xc6725b+0x2,_0x4723be=_0x285768+_0x1f5599+0x2,_0x60d58=0xa,_0x4988a8=[];for(let _0x29bb85=0x0;_0x29bb85<_0x208bda;_0x29bb85++)_0x4988a8[_0x48eab0(0x1e4)](this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++]));let _0x48660e=[];for(let _0x4c3901=0x0;_0x4c3901<_0x4723be;_0x4c3901++)_0x48660e[_0x48eab0(0x1e4)](this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++]));let _0x2f3ee8={'type':_0x48eab0(0x175),'degreeU':_0xc6725b,'degreeV':_0x1f5599,'controlPoints':[],'weights':[],'knotsU':_0x4988a8,'knotsV':_0x48660e,'properties':{'closedU':_0x978456===0x1,'closedV':_0x2be36d===0x1,'rational':_0x9daa2b===0x1,'periodicU':_0x15ac6f===0x1,'periodicV':_0xc0b059===0x1}};for(let _0x541f3d=0x0;_0x541f3d<_0x3e6df8;_0x541f3d++)_0x2f3ee8[_0x48eab0(0x1a3)]['push'](new Array(_0x3c42ec)),_0x2f3ee8[_0x48eab0(0x1a4)]['push'](new Array(_0x3c42ec));for(let _0x561a03=0x0;_0x561a03<_0x3c42ec;_0x561a03++)for(let _0x1a7ce4=0x0;_0x1a7ce4<_0x3e6df8;_0x1a7ce4++)_0x2f3ee8[_0x48eab0(0x1a3)][_0x1a7ce4][_0x561a03]=this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++])||0x1;for(let _0x23fc31=0x0;_0x23fc31<_0x3c42ec;_0x23fc31++)for(let _0x1581c9=0x0;_0x1581c9<_0x3e6df8;_0x1581c9++){let _0x3fab6f=this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++]),_0x13aec1=this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++]),_0xd84662=this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++]);_0x2f3ee8[_0x48eab0(0x1a4)][_0x1581c9][_0x23fc31]=[_0x3fab6f,_0x13aec1,_0xd84662];}if(_0x60d58+0x4<=_0x5078c3['length']){let _0x52981b=this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++]),_0x4dd42e=this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++]),_0x1fd5aa=this['_parseIgesNumber'](_0x5078c3[_0x60d58++]),_0x2f7004=this[_0x48eab0(0x1bf)](_0x5078c3[_0x60d58++]);_0x2f3ee8[_0x48eab0(0x1e6)]=[_0x52981b,_0x4dd42e],_0x2f3ee8[_0x48eab0(0x1ce)]=[_0x1fd5aa,_0x2f7004];}_0x189d4a[_0x48eab0(0x1e4)](_0x2f3ee8);},'igesToGeometry':function(_0x5c2a45){const _0x552f45=a0_0x3aa890;if(!_0x5c2a45||typeof _0x5c2a45!='string')throw new Error(_0x552f45(0x204));let _0x441f83=[],_0x5b9a8f=[],_0x430488=[],_0x8cdc00=[],_0x3483c5=_0x5c2a45[_0x552f45(0x1c4)]('\x0a')[_0x552f45(0x1ed)](_0x593164=>_0x593164[_0x552f45(0x1a2)]()&&_0x593164['charAt'](0x48)==='P'),_0x41a762='';for(let _0x15bfcd of _0x3483c5){let _0x1423e1=_0x15bfcd['substring'](0x0,0x40)[_0x552f45(0x1a2)]();_0x41a762+=_0x1423e1,_0x1423e1[_0x552f45(0x196)](';')&&(this[_0x552f45(0x1e7)](_0x41a762,_0x441f83,_0x5b9a8f,_0x430488,_0x8cdc00),_0x41a762='');}return{'lines':_0x441f83,'points':_0x5b9a8f,'nurbsCurves':_0x430488,'nurbsSurfaces':_0x8cdc00};}},G={'polylinePlaneIntersections3D':function(_0x1f0faa,_0x372a29){const _0x5d0ce7=a0_0x3aa890;let _0x32c603=[];for(let _0x44c454=0x0;_0x44c454<_0x1f0faa['length']-0x1;_0x44c454++){let _0x468b00=_0x1f0faa[_0x44c454],_0xe4f579=_0x1f0faa[_0x44c454+0x1],_0x52c440=[_0xe4f579[0x0]-_0x468b00[0x0],_0xe4f579[0x1]-_0x468b00[0x1],_0xe4f579[0x2]-_0x468b00[0x2]],_0x3e1d21={'origin':_0x468b00,'dir':_0x52c440},_0x14cdbe=this[_0x5d0ce7(0x1c9)](_0x3e1d21,_0x372a29);if(_0x14cdbe){let _0x36c3a5=_0x52c440[0x0]!==0x0?(_0x14cdbe[0x0]-_0x468b00[0x0])/_0x52c440[0x0]:_0x52c440[0x1]!==0x0?(_0x14cdbe[0x1]-_0x468b00[0x1])/_0x52c440[0x1]:_0x52c440[0x2]!==0x0?(_0x14cdbe[0x2]-_0x468b00[0x2])/_0x52c440[0x2]:0x0;_0x36c3a5>=0x0&&_0x36c3a5<=0x1&&(_0x32c603[_0x5d0ce7(0x182)](_0x353cf9=>{const _0x9a5b71=_0x5d0ce7;let _0x3266ae=_0x353cf9[0x0]-_0x14cdbe[0x0],_0x4b7573=_0x353cf9[0x1]-_0x14cdbe[0x1],_0x5f13e0=_0x353cf9[0x2]-_0x14cdbe[0x2];return Math[_0x9a5b71(0x21c)](_0x3266ae*_0x3266ae+_0x4b7573*_0x4b7573+_0x5f13e0*_0x5f13e0)<1e-10;})||_0x32c603['push'](_0x14cdbe));}}return _0x32c603;},'rayPlaneIntersection3D':function(_0x5a096c,_0x40e9bd){const _0x4cbc42=a0_0x3aa890;let _0x26a6f3=_0x5a096c[_0x4cbc42(0x183)],_0x4b2105=_0x5a096c[_0x4cbc42(0x209)],_0x32199d=_0x40e9bd['point'],_0x587d44=_0x40e9bd['normal'],_0x403fda=_0x4b2105[0x0]*_0x587d44[0x0]+_0x4b2105[0x1]*_0x587d44[0x1]+_0x4b2105[0x2]*_0x587d44[0x2];if(Math[_0x4cbc42(0x21a)](_0x403fda)<1e-10)return null;let _0xd3f93f=((_0x32199d[0x0]-_0x26a6f3[0x0])*_0x587d44[0x0]+(_0x32199d[0x1]-_0x26a6f3[0x1])*_0x587d44[0x1]+(_0x32199d[0x2]-_0x26a6f3[0x2])*_0x587d44[0x2])/_0x403fda;return _0xd3f93f<0x0?null:[_0x26a6f3[0x0]+_0xd3f93f*_0x4b2105[0x0],_0x26a6f3[0x1]+_0xd3f93f*_0x4b2105[0x1],_0x26a6f3[0x2]+_0xd3f93f*_0x4b2105[0x2]];},'polylineIntersections3D':function(_0x209ee5,_0x3c7a29,_0x1af9ac=0.000001){const _0x18fbf4=a0_0x3aa890;function _0x14c375(_0x21cd12,_0x5b7e02,_0x7be92f,_0x372bf2){const _0x194d9e=a0_0x15a7;let _0x4d0847=[_0x5b7e02[0x0]-_0x21cd12[0x0],_0x5b7e02[0x1]-_0x21cd12[0x1],_0x5b7e02[0x2]-_0x21cd12[0x2]],_0x17f13a=[_0x372bf2[0x0]-_0x7be92f[0x0],_0x372bf2[0x1]-_0x7be92f[0x1],_0x372bf2[0x2]-_0x7be92f[0x2]],_0x112ad2=[_0x21cd12[0x0]-_0x7be92f[0x0],_0x21cd12[0x1]-_0x7be92f[0x1],_0x21cd12[0x2]-_0x7be92f[0x2]],_0x50ae34=_0x523bb5(_0x4d0847,_0x4d0847),_0x56e1c8=_0x523bb5(_0x4d0847,_0x17f13a),_0x5be98a=_0x523bb5(_0x17f13a,_0x17f13a),_0x5dfa2d=_0x523bb5(_0x4d0847,_0x112ad2),_0x5c47e9=_0x523bb5(_0x17f13a,_0x112ad2),_0x10b116=_0x50ae34*_0x5be98a-_0x56e1c8*_0x56e1c8,_0xfb53ea,_0x28ec75;_0x10b116===0x0?(_0xfb53ea=0x0,_0x28ec75=_0x56e1c8>_0x5be98a?_0x5dfa2d/_0x56e1c8:_0x5c47e9/_0x5be98a):(_0xfb53ea=(_0x56e1c8*_0x5c47e9-_0x5be98a*_0x5dfa2d)/_0x10b116,_0x28ec75=(_0x50ae34*_0x5c47e9-_0x56e1c8*_0x5dfa2d)/_0x10b116),_0xfb53ea=Math[_0x194d9e(0x1bc)](0x0,Math[_0x194d9e(0x190)](0x1,_0xfb53ea)),_0x28ec75=Math[_0x194d9e(0x1bc)](0x0,Math[_0x194d9e(0x190)](0x1,_0x28ec75));let _0x4ec656=[_0x21cd12[0x0]+_0xfb53ea*_0x4d0847[0x0],_0x21cd12[0x1]+_0xfb53ea*_0x4d0847[0x1],_0x21cd12[0x2]+_0xfb53ea*_0x4d0847[0x2]],_0x301d7a=[_0x7be92f[0x0]+_0x28ec75*_0x17f13a[0x0],_0x7be92f[0x1]+_0x28ec75*_0x17f13a[0x1],_0x7be92f[0x2]+_0x28ec75*_0x17f13a[0x2]];return{'pt1':_0x4ec656,'pt2':_0x301d7a,'distance':Math[_0x194d9e(0x21c)]((_0x4ec656[0x0]-_0x301d7a[0x0])**0x2+(_0x4ec656[0x1]-_0x301d7a[0x1])**0x2+(_0x4ec656[0x2]-_0x301d7a[0x2])**0x2)};}function _0x523bb5(_0x2cb22a,_0x1d8b4b){return _0x2cb22a[0x0]*_0x1d8b4b[0x0]+_0x2cb22a[0x1]*_0x1d8b4b[0x1]+_0x2cb22a[0x2]*_0x1d8b4b[0x2];}let _0x223a1d=[];for(let _0x2a60cb=0x0;_0x2a60cb<_0x209ee5[_0x18fbf4(0x1d8)]-0x1;_0x2a60cb++)for(let _0x3446ed=0x0;_0x3446ed<_0x3c7a29[_0x18fbf4(0x1d8)]-0x1;_0x3446ed++){let {pt1:_0x14b1b6,pt2:_0x331b24,distance:_0x56dbb5}=_0x14c375(_0x209ee5[_0x2a60cb],_0x209ee5[_0x2a60cb+0x1],_0x3c7a29[_0x3446ed],_0x3c7a29[_0x3446ed+0x1]);_0x56dbb5<_0x1af9ac&&_0x223a1d['push']({'point':[(_0x14b1b6[0x0]+_0x331b24[0x0])/0x2,(_0x14b1b6[0x1]+_0x331b24[0x1])/0x2,(_0x14b1b6[0x2]+_0x331b24[0x2])/0x2],'seg1':_0x2a60cb,'seg2':_0x3446ed,'distance':_0x56dbb5});}return _0x223a1d;}},B={'projectTo2d':function(_0x2c8c31){const _0xb0e908=a0_0x3aa890;let _0x1754f4=[..._0x2c8c31];if(_0x1754f4[_0xb0e908(0x1d8)]<0x3)throw new Error(_0xb0e908(0x1b7));let {normal:_0x5cc99b,point:_0x41f4bc}=this[_0xb0e908(0x1ad)](_0x1754f4),_0x28f398=1e-10,_0x10e9b1=null;for(let _0x381790=0x1;_0x381790<_0x1754f4[_0xb0e908(0x1d8)];_0x381790++){let _0x278484=w['fromTwoPoints'](_0x41f4bc,_0x1754f4[_0x381790]);if(w[_0xb0e908(0x1d8)](_0x278484)>_0x28f398){_0x10e9b1=_0x278484;break;}}let _0x2f95b6=w[_0xb0e908(0x17e)](_0x10e9b1),_0x5aa77c=w[_0xb0e908(0x1cc)](_0x5cc99b,_0x2f95b6),_0x2e6c4c=w[_0xb0e908(0x17e)](_0x5aa77c);return _0x1754f4[_0xb0e908(0x1a8)](_0xd49588=>{const _0x57b067=_0xb0e908;let _0xfa24d=w[_0x57b067(0x1b1)](_0x41f4bc,_0xd49588);return[w['dot'](_0xfa24d,_0x2f95b6),w[_0x57b067(0x1b4)](_0xfa24d,_0x2e6c4c)];});},'projectedAreas':function(_0x12c75d){const _0x3123a1=a0_0x3aa890;let _0x4c9b31=[..._0x12c75d];if(_0x4c9b31[_0x3123a1(0x1d8)]<0x3)throw new Error('Need\x20at\x20least\x203\x20points\x20for\x20a\x20polygon');let _0x540628=_0x4c9b31[_0x3123a1(0x1d8)],_0x3fbe24=0x0;for(let _0x5af6af=0x0;_0x5af6af<_0x540628;_0x5af6af++){let [_0x417b35,_0x581cc3]=_0x4c9b31[_0x5af6af],[_0x15ef96,_0x37fbb9]=_0x4c9b31[(_0x5af6af+0x1)%_0x540628];_0x3fbe24+=_0x417b35*_0x37fbb9-_0x15ef96*_0x581cc3;}_0x3fbe24=Math['abs'](_0x3fbe24)*0.5;let _0xbc1879=0x0;for(let _0x23e69c=0x0;_0x23e69c<_0x540628;_0x23e69c++){let [_0x424844,,_0x362a71]=_0x4c9b31[_0x23e69c],[_0x16ec0f,,_0x52b484]=_0x4c9b31[(_0x23e69c+0x1)%_0x540628];_0xbc1879+=_0x424844*_0x52b484-_0x16ec0f*_0x362a71;}_0xbc1879=Math[_0x3123a1(0x21a)](_0xbc1879)*0.5;let _0x35c4c2=0x0;for(let _0x1db6ec=0x0;_0x1db6ec<_0x540628;_0x1db6ec++){let [,_0x416bd9,_0x35a0a8]=_0x4c9b31[_0x1db6ec],[,_0x5666bc,_0x26adac]=_0x4c9b31[(_0x1db6ec+0x1)%_0x540628];_0x35c4c2+=_0x416bd9*_0x26adac-_0x5666bc*_0x35a0a8;}return _0x35c4c2=Math[_0x3123a1(0x21a)](_0x35c4c2)*0.5,{'xy':_0x3fbe24,'xz':_0xbc1879,'yz':_0x35c4c2};},'plane':function(_0x15be03){const _0x68be87=a0_0x3aa890;let _0x597c67=[..._0x15be03];if(_0x597c67[_0x68be87(0x1d8)]<0x3)throw new Error('Need\x20at\x20least\x203\x20points\x20to\x20define\x20a\x20plane');let _0x2fb039=1e-10,_0x5173a3=_0x597c67[0x0],_0x30c203=null,_0xf67ced=-0x1;for(let _0x230d5a=0x1;_0x230d5a<_0x597c67[_0x68be87(0x1d8)];_0x230d5a++){let _0x213d3f=w['fromTwoPoints'](_0x5173a3,_0x597c67[_0x230d5a]);if(w[_0x68be87(0x1d8)](_0x213d3f)>_0x2fb039){_0x30c203=_0x213d3f,_0xf67ced=_0x230d5a;break;}}if(!_0x30c203)throw new Error(_0x68be87(0x1cf));let _0x40fdb7=null;for(let _0x34bc2c=0x1;_0x34bc2c<_0x597c67[_0x68be87(0x1d8)];_0x34bc2c++){if(_0x34bc2c===_0xf67ced)continue;let _0x209245=w['fromTwoPoints'](_0x5173a3,_0x597c67[_0x34bc2c]),_0x1eb236=w[_0x68be87(0x1cc)](_0x30c203,_0x209245);if(w[_0x68be87(0x1d8)](_0x1eb236)>_0x2fb039){_0x40fdb7=w[_0x68be87(0x17e)](_0x1eb236);break;}}if(!_0x40fdb7)throw new Error('Degenerate\x20polygon:\x20all\x20points\x20are\x20collinear');let [_0x23cfe3,_0x45180a,_0x36800f]=_0x40fdb7,_0x246183=-(_0x23cfe3*_0x5173a3[0x0]+_0x45180a*_0x5173a3[0x1]+_0x36800f*_0x5173a3[0x2]);return{'a':_0x23cfe3,'b':_0x45180a,'c':_0x36800f,'d':_0x246183,'normal':_0x40fdb7,'point':_0x5173a3};}};if(new Date()[a0_0x3aa890(0x1fb)]()>0x7ea)throw new Error('');export{k as Bspline3d,K as Cspline3d,H as Iges,G as Intersection3d,$ as Matrix,T as Nurbs3d,U as Point3d,B as Polygon3d,D as Polyline3D,L as Utils,w as Vector3d};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tomaso909/js3d",
3
- "version": "1.14.0",
3
+ "version": "1.19.0",
4
4
  "description": "A lightweight 3D vector math library in ES6",
5
5
  "main": "dist/index.obf.js",
6
6
  "module": "dist/index.obf.js",