@tomaso909/js3d 1.18.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_0x772e08=a0_0x57f9;(function(_0x41a66d,_0x54bd30){const _0x57cd1a=a0_0x57f9,_0x571f8c=_0x41a66d();while(!![]){try{const _0x1cc178=-parseInt(_0x57cd1a(0x1b6))/0x1+parseInt(_0x57cd1a(0x17f))/0x2*(parseInt(_0x57cd1a(0x188))/0x3)+-parseInt(_0x57cd1a(0x1f4))/0x4+parseInt(_0x57cd1a(0x1d9))/0x5+parseInt(_0x57cd1a(0x1e3))/0x6+parseInt(_0x57cd1a(0x17d))/0x7*(-parseInt(_0x57cd1a(0x1e5))/0x8)+-parseInt(_0x57cd1a(0x1cb))/0x9*(-parseInt(_0x57cd1a(0x18a))/0xa);if(_0x1cc178===_0x54bd30)break;else _0x571f8c['push'](_0x571f8c['shift']());}catch(_0x4321ea){_0x571f8c['push'](_0x571f8c['shift']());}}}(a0_0x2e26,0x466c7));function a0_0x57f9(_0x49d46a,_0x48aead){const _0x2e2692=a0_0x2e26();return a0_0x57f9=function(_0x57f90e,_0x1d2fe5){_0x57f90e=_0x57f90e-0x151;let _0xd8d870=_0x2e2692[_0x57f90e];return _0xd8d870;},a0_0x57f9(_0x49d46a,_0x48aead);}var w={'length':function(_0x19b03f){const _0x18a6d8=a0_0x57f9;return Math[_0x18a6d8(0x1dc)](_0x19b03f[0x0]**0x2+_0x19b03f[0x1]**0x2+_0x19b03f[0x2]**0x2);},'scalarProduct':function(_0x463131,_0x8bb61c){return[_0x463131[0x0]*_0x8bb61c,_0x463131[0x1]*_0x8bb61c,_0x463131[0x2]*_0x8bb61c];},'dot':function(_0x228d2c,_0x4b42f1){return _0x228d2c[0x0]*_0x4b42f1[0x0]+_0x228d2c[0x1]*_0x4b42f1[0x1]+_0x228d2c[0x2]*_0x4b42f1[0x2];},'angle':function(_0x2f4c01,_0x178e52,_0x1447ea=!0x1){const _0x156213=a0_0x57f9;let _0x5021a1=this['dot'](_0x2f4c01,_0x178e52)/(this['length'](_0x2f4c01)*this[_0x156213(0x1ee)](_0x178e52)),_0x2b455c=Math['acos'](_0x5021a1);return _0x1447ea&&_0x2b455c>Math['PI']/0x2&&(_0x2b455c=Math['PI']-_0x2b455c),_0x2b455c;},'signedAngle':function(_0x187bfe,_0x977251,_0x53dcdf){const _0xeb88ef=a0_0x57f9;let _0x1fc9d0=this['angle'](_0x187bfe,_0x977251),_0x8f2326=this[_0xeb88ef(0x1cd)](_0x187bfe,_0x977251);return(this['dot'](_0x8f2326,_0x53dcdf)>=0x0?0x1:-0x1)*_0x1fc9d0;},'sub':function(_0x3faf36,_0x20aee4){return[_0x3faf36[0x0]-_0x20aee4[0x0],_0x3faf36[0x1]-_0x20aee4[0x1],_0x3faf36[0x2]-_0x20aee4[0x2]];},'add':function(_0xa6fa8c,_0x308b2a){return[_0xa6fa8c[0x0]+_0x308b2a[0x0],_0xa6fa8c[0x1]+_0x308b2a[0x1],_0xa6fa8c[0x2]+_0x308b2a[0x2]];},'rotate':function(_0x3fd7fd,_0x1acd11,_0x480687){const _0x5c9912=a0_0x57f9;let _0x261096=_0x480687*Math['PI']/0xb4,_0xe3a7d2=Math['cos'](_0x261096),_0x2bff6a=Math[_0x5c9912(0x15d)](_0x261096),_0x130ec8=_0x3fd7fd[0x0],_0x30949d=_0x3fd7fd[0x1],_0x3b0bc0=_0x3fd7fd[0x2],_0x29f103=_0x1acd11[0x0],_0x2273b3=_0x1acd11[0x1],_0x457794=_0x1acd11[0x2],_0x7301e7=_0x29f103*_0x130ec8+_0x2273b3*_0x30949d+_0x457794*_0x3b0bc0,_0x537e12=_0x29f103*_0x7301e7*(0x1-_0xe3a7d2)+_0x130ec8*_0xe3a7d2+(-_0x457794*_0x30949d+_0x2273b3*_0x3b0bc0)*_0x2bff6a,_0x4517cd=_0x2273b3*_0x7301e7*(0x1-_0xe3a7d2)+_0x30949d*_0xe3a7d2+(_0x457794*_0x130ec8-_0x29f103*_0x3b0bc0)*_0x2bff6a,_0x245fb9=_0x457794*_0x7301e7*(0x1-_0xe3a7d2)+_0x3b0bc0*_0xe3a7d2+(-_0x2273b3*_0x130ec8+_0x29f103*_0x30949d)*_0x2bff6a;return[_0x537e12,_0x4517cd,_0x245fb9];},'fromTwoPoints':function(_0x147479,_0x6d2e6c){return[_0x6d2e6c[0x0]-_0x147479[0x0],_0x6d2e6c[0x1]-_0x147479[0x1],_0x6d2e6c[0x2]-_0x147479[0x2]];},'normalized':function(_0xdc5092){const _0x673c65=a0_0x57f9;return w[_0x673c65(0x166)](_0xdc5092,0x1/w['length'](_0xdc5092));},'cross':function(_0x5e70c5,_0x4933c7){return[_0x5e70c5[0x1]*_0x4933c7[0x2]-_0x5e70c5[0x2]*_0x4933c7[0x1],_0x5e70c5[0x2]*_0x4933c7[0x0]-_0x5e70c5[0x0]*_0x4933c7[0x2],_0x5e70c5[0x0]*_0x4933c7[0x1]-_0x5e70c5[0x1]*_0x4933c7[0x0]];},'project':function(_0x3dfa41,_0x4c1c10){const _0x22fd60=a0_0x57f9;let _0x2f5a81=this[_0x22fd60(0x19b)](_0x4c1c10),_0x12fa5f=this[_0x22fd60(0x1d0)](_0x3dfa41,_0x2f5a81);return this[_0x22fd60(0x1ea)](_0x3dfa41,this[_0x22fd60(0x166)](_0x2f5a81,_0x12fa5f));}},U={'distance':function(_0x3403cf,_0x1dadca){const _0x49527d=a0_0x57f9;return w[_0x49527d(0x1ee)](w[_0x49527d(0x1ea)](_0x1dadca,_0x3403cf));},'move':function(_0x4fe272,_0x24e711){return w['add'](_0x4fe272,_0x24e711);},'scale':function(_0x385393,_0x29fa86,_0x1b8ac9){const _0x56c986=a0_0x57f9;return _0x1b8ac9!=null&&(_0x385393=this['move'](_0x385393,w[_0x56c986(0x166)](_0x1b8ac9,-0x1))),_0x385393=w[_0x56c986(0x166)](_0x385393,_0x29fa86),_0x1b8ac9!=null&&(_0x385393=this[_0x56c986(0x1d4)](_0x385393,_0x1b8ac9)),_0x385393;},'rotate':function(_0x202e8b,_0x5be298,_0x21b03d,_0xd0c933){const _0x5b60e3=a0_0x57f9;let _0x3225e3=_0x21b03d*Math['PI']/0xb4,_0x55e0c5=Math[_0x5b60e3(0x1bd)](_0x3225e3),_0x4c2970=Math[_0x5b60e3(0x15d)](_0x3225e3),_0xaf5f1e=_0x202e8b[0x0],_0x59e40d=_0x202e8b[0x1],_0x2400b7=_0x202e8b[0x2];_0xd0c933!=null&&(_0xaf5f1e=_0xaf5f1e-_0xd0c933[0x0],_0x59e40d=_0x59e40d-_0xd0c933[0x1],_0x2400b7=_0x2400b7-_0xd0c933[0x2]);let _0x402191=_0x5be298[0x0],_0x3eaff2=_0x5be298[0x1],_0x5c423e=_0x5be298[0x2],_0x3b4193=_0x402191*_0xaf5f1e+_0x3eaff2*_0x59e40d+_0x5c423e*_0x2400b7,_0x507612=_0x402191*_0x3b4193*(0x1-_0x55e0c5)+_0xaf5f1e*_0x55e0c5+(-_0x5c423e*_0x59e40d+_0x3eaff2*_0x2400b7)*_0x4c2970,_0x3a4d3a=_0x3eaff2*_0x3b4193*(0x1-_0x55e0c5)+_0x59e40d*_0x55e0c5+(_0x5c423e*_0xaf5f1e-_0x402191*_0x2400b7)*_0x4c2970,_0x5a64f1=_0x5c423e*_0x3b4193*(0x1-_0x55e0c5)+_0x2400b7*_0x55e0c5+(-_0x3eaff2*_0xaf5f1e+_0x402191*_0x59e40d)*_0x4c2970,_0x54f2d6=[_0x507612,_0x3a4d3a,_0x5a64f1];return _0xd0c933!=null&&(_0x54f2d6[0x0]=_0x54f2d6[0x0]+_0xd0c933[0x0],_0x54f2d6[0x1]=_0x54f2d6[0x1]+_0xd0c933[0x1],_0x54f2d6[0x2]=_0x54f2d6[0x2]+_0xd0c933[0x2]),_0x54f2d6;},'project':function(_0x41961b,_0x2b06c5,_0x293b14){const _0x20df2d=a0_0x57f9;let _0x326587=w['sub'](_0x41961b,_0x293b14),_0x1d959a=w[_0x20df2d(0x1d0)](_0x326587,_0x2b06c5)/w[_0x20df2d(0x1ee)](_0x2b06c5),_0x3d666a=w[_0x20df2d(0x166)](_0x2b06c5,0x1/w[_0x20df2d(0x1ee)](_0x2b06c5));return w[_0x20df2d(0x1ea)](_0x41961b,w[_0x20df2d(0x166)](_0x3d666a,_0x1d959a));},'mirror':function(_0x26e260,_0x3cb7f0,_0x1bbd8f=[0x0,0x0,0x0]){const _0x3a17f8=a0_0x57f9;let _0xcc1fa2=w[_0x3a17f8(0x1ea)](_0x26e260,_0x1bbd8f),_0x433819=w[_0x3a17f8(0x1ee)](_0x3cb7f0),_0x18a220=w[_0x3a17f8(0x1d0)](_0xcc1fa2,_0x3cb7f0)/_0x433819,_0x3d2b9a=w[_0x3a17f8(0x166)](_0x3cb7f0,0x1/_0x433819);return w['sub'](_0x26e260,w[_0x3a17f8(0x166)](_0x3d2b9a,0x2*_0x18a220));}},L={'linspace':function(_0x2aa47b,_0x2d80c1,_0x1a8c8f,_0x488858=!0x0){const _0x1c341e=a0_0x57f9;let _0x4ad97a=_0x488858?_0x1a8c8f-0x1:_0x1a8c8f,_0x4cf327=(_0x2d80c1-_0x2aa47b)/_0x4ad97a;return Array[_0x1c341e(0x17a)]({'length':_0x1a8c8f},(_0x366c4b,_0x2faf0f)=>_0x2aa47b+_0x4cf327*_0x2faf0f);},'cosineSpacing':function(_0x22b37d,_0x52c624,_0x3a550b){const _0xac646=a0_0x57f9;let _0x380873=Array[_0xac646(0x17a)]({'length':_0x3a550b},(_0x4d8c03,_0x16376b)=>_0x16376b/(_0x3a550b-0x1))[_0xac646(0x1c7)](_0x1e4c5b=>(0x1-Math['cos'](_0x1e4c5b*Math['PI']))/0x2),_0x1f0606=[];for(let _0x300243=0x0;_0x300243<_0x380873[_0xac646(0x1ee)];_0x300243++){let _0x4db4f1=_0x380873[_0x300243];_0x1f0606[_0xac646(0x16a)](mapToSpace(_0x4db4f1,[0x0,0x1],[_0x22b37d,_0x52c624]));}return _0x1f0606;},'normalizedCosineSpacing':function(_0x581a2c){const _0x18a6c1=a0_0x57f9;return Array['from']({'length':_0x581a2c},(_0x58f801,_0x54aab6)=>_0x54aab6/(_0x581a2c-0x1))[_0x18a6c1(0x1c7)](_0x123670=>(0x1-Math[_0x18a6c1(0x1bd)](_0x123670*Math['PI']))/0x2);},'mapToSpace':function(_0x199eb1,_0xb296b0,_0x8cf0a2){return _0x8cf0a2[0x1]+(_0x199eb1-_0xb296b0[0x1])*(_0x8cf0a2[0x0]-_0x8cf0a2[0x1])/(_0xb296b0[0x0]-_0xb296b0[0x1]);},'solveLinearSystem':function(_0x362f16,_0x5177fc){const _0x97190d=a0_0x57f9;let _0x2fc901=_0x362f16[_0x97190d(0x1ee)],_0xb608e7=[];for(let _0x3a83af=0x0;_0x3a83af<_0x2fc901;_0x3a83af++)_0xb608e7[_0x3a83af]=_0x362f16[_0x3a83af][_0x97190d(0x1a8)](),_0xb608e7[_0x3a83af]['push'](_0x5177fc[_0x3a83af]);for(let _0x1c4b95=0x0;_0x1c4b95<_0x2fc901;_0x1c4b95++){let _0x237b72=_0x1c4b95;for(let _0x5e6fb5=_0x1c4b95+0x1;_0x5e6fb5<_0x2fc901;_0x5e6fb5++)Math[_0x97190d(0x1c9)](_0xb608e7[_0x5e6fb5][_0x1c4b95])>Math[_0x97190d(0x1c9)](_0xb608e7[_0x237b72][_0x1c4b95])&&(_0x237b72=_0x5e6fb5);[_0xb608e7[_0x1c4b95],_0xb608e7[_0x237b72]]=[_0xb608e7[_0x237b72],_0xb608e7[_0x1c4b95]];for(let _0x990cce=_0x1c4b95+0x1;_0x990cce<_0x2fc901;_0x990cce++){let _0x1d8ae7=_0xb608e7[_0x990cce][_0x1c4b95]/_0xb608e7[_0x1c4b95][_0x1c4b95];for(let _0x2049eb=_0x1c4b95;_0x2049eb<=_0x2fc901;_0x2049eb++)_0xb608e7[_0x990cce][_0x2049eb]-=_0x1d8ae7*_0xb608e7[_0x1c4b95][_0x2049eb];}}let _0x2cdfc7=new Array(_0x2fc901);for(let _0x12ae68=_0x2fc901-0x1;_0x12ae68>=0x0;_0x12ae68--){_0x2cdfc7[_0x12ae68]=_0xb608e7[_0x12ae68][_0x2fc901];for(let _0x3d6410=_0x12ae68+0x1;_0x3d6410<_0x2fc901;_0x3d6410++)_0x2cdfc7[_0x12ae68]-=_0xb608e7[_0x12ae68][_0x3d6410]*_0x2cdfc7[_0x3d6410];_0x2cdfc7[_0x12ae68]/=_0xb608e7[_0x12ae68][_0x12ae68];}return _0x2cdfc7;},'equalWithPrecision':function(_0x5c4a14,_0xd77f9f,_0x334cbc=0x6){const _0x11c2c=a0_0x57f9;let _0x38a95a=Math[_0x11c2c(0x1e8)](0xa,_0x334cbc);return Math[_0x11c2c(0x16c)](_0x5c4a14*_0x38a95a)===Math[_0x11c2c(0x16c)](_0xd77f9f*_0x38a95a);}},$={'multiplyTranspose':function(_0x4c6d6d,_0x41d4db){const _0x2c83e2=a0_0x57f9;let _0x271c8f=_0x4c6d6d[0x0]['length'],_0x25c0e8=_0x41d4db[0x0][_0x2c83e2(0x1ee)],_0x2b9034=[];for(let _0x411556=0x0;_0x411556<_0x271c8f;_0x411556++){_0x2b9034[_0x411556]=[];for(let _0x32ff0f=0x0;_0x32ff0f<_0x25c0e8;_0x32ff0f++){let _0x1ccb97=0x0;for(let _0x352cc6=0x0;_0x352cc6<_0x4c6d6d[_0x2c83e2(0x1ee)];_0x352cc6++)_0x1ccb97+=_0x4c6d6d[_0x352cc6][_0x411556]*_0x41d4db[_0x352cc6][_0x32ff0f];_0x2b9034[_0x411556][_0x32ff0f]=_0x1ccb97;}}return _0x2b9034;},'vectorMultiplyTranspose':function(_0xafa66f,_0xfc54a0){const _0x4bb7e2=a0_0x57f9;let _0xbbf23a=_0xafa66f[0x0][_0x4bb7e2(0x1ee)],_0x59e022=[];for(let _0x542ec3=0x0;_0x542ec3<_0xbbf23a;_0x542ec3++){let _0x173fba=0x0;for(let _0x49b3d7=0x0;_0x49b3d7<_0xafa66f[_0x4bb7e2(0x1ee)];_0x49b3d7++)_0x173fba+=_0xafa66f[_0x49b3d7][_0x542ec3]*_0xfc54a0[_0x49b3d7];_0x59e022[_0x542ec3]=_0x173fba;}return _0x59e022;}},O={'from_control_points':function(_0x243de5,_0x50ba56,_0x4e1a6a,_0x26c135){const _0x5ddde3=a0_0x57f9;_0x26c135===void 0x0&&(_0x26c135=this[_0x5ddde3(0x168)](_0x243de5,_0x50ba56));let _0x4fd4c2=L[_0x5ddde3(0x1da)](0x0,0x1,_0x4e1a6a),_0x34c249=[];for(var _0x2504e5 of _0x4fd4c2)_0x34c249['push'](this[_0x5ddde3(0x1e6)](_0x2504e5,_0x50ba56,_0x243de5,_0x26c135));return _0x34c249;},'from_control_points_cosine':function(_0xd15c47,_0x5c7e27,_0x1ae2c1,_0xfa4529){const _0x54b8bc=a0_0x57f9;_0xfa4529===void 0x0&&(_0xfa4529=this['uniform_knot_spacing'](_0xd15c47,_0x5c7e27));let _0x35c7bf=L['normalizedCosineSpacing'](_0x1ae2c1),_0x368fab=[];for(var _0x36918f of _0x35c7bf)_0x368fab['push'](this[_0x54b8bc(0x1e6)](_0x36918f,_0x5c7e27,_0xd15c47,_0xfa4529));return _0x368fab;},'approximate_curve':function(_0x9cf149,_0x53c4e6,_0x31886f=0x3,_0x4accc3=!0x1,_0x2f4a05=a0_0x772e08(0x178),_0x5e72a3=!0x1){const _0x1d9a72=a0_0x772e08;if(_0x53c4e6<_0x31886f+0x1)throw new Error(_0x1d9a72(0x1de));if(_0x9cf149[_0x1d9a72(0x1ee)]<0x2)throw new Error('Need\x20at\x20least\x202\x20points\x20to\x20approximate');let _0xa69a63=_0x9cf149;_0x5e72a3&&(_0xa69a63=this[_0x1d9a72(0x19e)](_0x9cf149,_0x9cf149[_0x1d9a72(0x1ee)]));let _0x343a59=_0xa69a63[_0x1d9a72(0x1ee)],_0x2585fd=_0x53c4e6,_0x1930f0=_0xa69a63[0x0][_0x1d9a72(0x1ee)],_0x149c3a,_0x377e89;switch(_0x2f4a05){case _0x1d9a72(0x1cf):_0x149c3a=this[_0x1d9a72(0x1a4)](_0xa69a63),_0x377e89=this[_0x1d9a72(0x156)](_0x2585fd,_0x31886f);break;case _0x1d9a72(0x191):_0x149c3a=this[_0x1d9a72(0x193)](_0xa69a63),_0x377e89=this['_approximate_knot_vector'](_0x149c3a,_0x2585fd,_0x31886f);break;case'centripetal':default:_0x149c3a=this[_0x1d9a72(0x179)](_0xa69a63),_0x377e89=this[_0x1d9a72(0x16f)](_0x149c3a,_0x2585fd,_0x31886f);break;}let _0x7ca90c=[];for(let _0x91a809=0x0;_0x91a809<_0x343a59;_0x91a809++){_0x7ca90c[_0x91a809]=[];for(let _0x53ffc4=0x0;_0x53ffc4<_0x2585fd;_0x53ffc4++)_0x7ca90c[_0x91a809][_0x53ffc4]=this[_0x1d9a72(0x1b7)](_0x53ffc4,_0x31886f,_0x149c3a[_0x91a809],_0x377e89);}let _0x2f812f=new Array(_0x2585fd);for(let _0x207678=0x0;_0x207678<_0x2585fd;_0x207678++)_0x2f812f[_0x207678]=new Array(_0x1930f0);if(_0x4accc3){_0x2f812f[0x0]=[..._0xa69a63[0x0]],_0x2f812f[_0x2585fd-0x1]=[..._0xa69a63[_0xa69a63['length']-0x1]];let _0x3dd428=[];for(let _0x552141=0x1;_0x552141<_0x2585fd-0x1;_0x552141++)_0x3dd428[_0x1d9a72(0x16a)](_0x552141);for(let _0x57bc67=0x0;_0x57bc67<_0x1930f0;_0x57bc67++){let _0x50d55d=_0xa69a63[_0x1d9a72(0x1c7)](_0x22ca1b=>_0x22ca1b[_0x57bc67]);if(_0x3dd428['length']===0x0)continue;let _0x5eaf89=[],_0x3dd468=[];for(let _0xa24097=0x0;_0xa24097<_0x343a59;_0xa24097++){_0x5eaf89[_0xa24097]=[];for(let _0x38db2e of _0x3dd428)_0x5eaf89[_0xa24097][_0x1d9a72(0x16a)](_0x7ca90c[_0xa24097][_0x38db2e]);_0x3dd468[_0xa24097]=_0x50d55d[_0xa24097]-_0x7ca90c[_0xa24097][0x0]*_0x2f812f[0x0][_0x57bc67]-_0x7ca90c[_0xa24097][_0x2585fd-0x1]*_0x2f812f[_0x2585fd-0x1][_0x57bc67];}let _0x26d8e4=$[_0x1d9a72(0x1c3)](_0x5eaf89,_0x5eaf89),_0x30d6b6=$['vectorMultiplyTranspose'](_0x5eaf89,_0x3dd468),_0x4a56a1=L['solveLinearSystem'](_0x26d8e4,_0x30d6b6);for(let _0x3adfff=0x0;_0x3adfff<_0x3dd428[_0x1d9a72(0x1ee)];_0x3adfff++)_0x2f812f[_0x3dd428[_0x3adfff]][_0x57bc67]=_0x4a56a1[_0x3adfff];}}else for(let _0x4f58b5=0x0;_0x4f58b5<_0x1930f0;_0x4f58b5++){let _0x20fdb5=_0xa69a63[_0x1d9a72(0x1c7)](_0x74f4a9=>_0x74f4a9[_0x4f58b5]),_0x1f181f=$[_0x1d9a72(0x1c3)](_0x7ca90c,_0x7ca90c),_0x55ce59=$['vectorMultiplyTranspose'](_0x7ca90c,_0x20fdb5),_0x1b7e4e=L[_0x1d9a72(0x19f)](_0x1f181f,_0x55ce59);for(let _0x49917a=0x0;_0x49917a<_0x2585fd;_0x49917a++)_0x2f812f[_0x49917a][_0x4f58b5]=_0x1b7e4e[_0x49917a];}return{'controlPoints':_0x2f812f,'knots':_0x377e89,'degree':_0x31886f};},'_resample_to_uniform_arc_length':function(_0x1a7ab5,_0x361bb8){const _0x1ad4c7=a0_0x772e08;if(_0x1a7ab5[_0x1ad4c7(0x1ee)]<0x2)return _0x1a7ab5;let _0x5cd3ec=[0x0],_0x5c3141=0x0;for(let _0x628d03=0x1;_0x628d03<_0x1a7ab5[_0x1ad4c7(0x1ee)];_0x628d03++){let _0x865723=0x0;for(let _0x417b7c=0x0;_0x417b7c<_0x1a7ab5[_0x628d03][_0x1ad4c7(0x1ee)];_0x417b7c++)_0x865723+=Math[_0x1ad4c7(0x1e8)](_0x1a7ab5[_0x628d03][_0x417b7c]-_0x1a7ab5[_0x628d03-0x1][_0x417b7c],0x2);_0x5c3141+=Math[_0x1ad4c7(0x1dc)](_0x865723),_0x5cd3ec[_0x1ad4c7(0x16a)](_0x5c3141);}if(_0x5c3141===0x0)return _0x1a7ab5;let _0x591291=[],_0x48294e=_0x5c3141/(_0x361bb8-0x1);for(let _0x5b4691=0x0;_0x5b4691<_0x361bb8;_0x5b4691++){let _0x3bbf72=_0x5b4691*_0x48294e,_0x3c2425=0x0;for(let _0x32df8f=0x1;_0x32df8f<_0x5cd3ec['length'];_0x32df8f++){if(_0x5cd3ec[_0x32df8f]>=_0x3bbf72){_0x3c2425=_0x32df8f-0x1;break;}_0x3c2425=_0x32df8f-0x1;}if(_0x3c2425>=_0x1a7ab5[_0x1ad4c7(0x1ee)]-0x1){_0x591291[_0x1ad4c7(0x16a)]([..._0x1a7ab5[_0x1a7ab5[_0x1ad4c7(0x1ee)]-0x1]]);continue;}let _0xb2ff9d=_0x5cd3ec[_0x3c2425],_0x24ea1c=_0x5cd3ec[_0x3c2425+0x1]-_0xb2ff9d,_0x28f133=0x0;_0x24ea1c>0x0&&(_0x28f133=(_0x3bbf72-_0xb2ff9d)/_0x24ea1c);let _0x44671f=_0x1a7ab5[_0x3c2425],_0x26156e=_0x1a7ab5[_0x3c2425+0x1],_0x30d741=[];for(let _0x593e40=0x0;_0x593e40<_0x44671f[_0x1ad4c7(0x1ee)];_0x593e40++)_0x30d741[_0x1ad4c7(0x16a)](_0x44671f[_0x593e40]+_0x28f133*(_0x26156e[_0x593e40]-_0x44671f[_0x593e40]));_0x591291[_0x1ad4c7(0x16a)](_0x30d741);}return _0x591291;},'_uniform_parameterization':function(_0x5bb4e5){const _0xa64db9=a0_0x772e08;let _0x462514=[];for(let _0x18f9cf=0x0;_0x18f9cf<_0x5bb4e5[_0xa64db9(0x1ee)];_0x18f9cf++)_0x462514[_0xa64db9(0x16a)](_0x18f9cf/(_0x5bb4e5[_0xa64db9(0x1ee)]-0x1));return _0x462514;},'_uniform_knot_vector':function(_0x55b5e1,_0x37186b){const _0x18435d=a0_0x772e08;let _0x1695d0=_0x55b5e1,_0x7e2e51=[],_0x4db204=_0x1695d0-_0x37186b-0x1;for(let _0x138982=0x0;_0x138982<=_0x37186b;_0x138982++)_0x7e2e51[_0x18435d(0x16a)](0x0);for(let _0x32815c=0x1;_0x32815c<=_0x4db204;_0x32815c++)_0x7e2e51[_0x18435d(0x16a)](_0x32815c/(_0x4db204+0x1));for(let _0x2a9a0b=0x0;_0x2a9a0b<=_0x37186b;_0x2a9a0b++)_0x7e2e51[_0x18435d(0x16a)](0x1);return _0x7e2e51;},'_centripetal_parameterization':function(_0x4c14c9){const _0x4f9d54=a0_0x772e08;let _0xc934b9=[0x0],_0x5bd09a=[0x0],_0x4bc947=0x0;for(let _0x345986=0x1;_0x345986<_0x4c14c9[_0x4f9d54(0x1ee)];_0x345986++){let _0x15adc6=0x0;for(let _0x44d265=0x0;_0x44d265<_0x4c14c9[_0x345986][_0x4f9d54(0x1ee)];_0x44d265++)_0x15adc6+=Math['pow'](_0x4c14c9[_0x345986][_0x44d265]-_0x4c14c9[_0x345986-0x1][_0x44d265],0x2);_0x15adc6=Math[_0x4f9d54(0x1e8)](_0x15adc6,0.25),_0x4bc947+=_0x15adc6,_0x5bd09a[_0x4f9d54(0x16a)](_0x4bc947);}for(let _0x1499f2=0x1;_0x1499f2<_0x4c14c9[_0x4f9d54(0x1ee)];_0x1499f2++)_0xc934b9[_0x4f9d54(0x16a)](_0x5bd09a[_0x1499f2]/_0x4bc947);return _0xc934b9;},'_chord_length_parameterization':function(_0x3aa830){const _0x5e7d40=a0_0x772e08;let _0x446b12=[0x0],_0x460338=[0x0],_0x3137ea=0x0;for(let _0x1b68fb=0x1;_0x1b68fb<_0x3aa830[_0x5e7d40(0x1ee)];_0x1b68fb++){let _0x2bec58=0x0;for(let _0x238e6b=0x0;_0x238e6b<_0x3aa830[_0x1b68fb][_0x5e7d40(0x1ee)];_0x238e6b++)_0x2bec58+=Math[_0x5e7d40(0x1e8)](_0x3aa830[_0x1b68fb][_0x238e6b]-_0x3aa830[_0x1b68fb-0x1][_0x238e6b],0x2);_0x2bec58=Math[_0x5e7d40(0x1dc)](_0x2bec58),_0x3137ea+=_0x2bec58,_0x460338[_0x5e7d40(0x16a)](_0x3137ea);}for(let _0x36d692=0x1;_0x36d692<_0x3aa830[_0x5e7d40(0x1ee)];_0x36d692++)_0x446b12[_0x5e7d40(0x16a)](_0x460338[_0x36d692]/_0x3137ea);return _0x446b12;},'_approximate_knot_vector':function(_0x19dc74,_0x75db22,_0x5026e5){const _0x2a3f80=a0_0x772e08;let _0x26f378=_0x19dc74['length'],_0x581db8=_0x75db22,_0x148ff5=[];for(let _0x51d405=0x0;_0x51d405<=_0x5026e5;_0x51d405++)_0x148ff5['push'](0x0);let _0x2aa652=(_0x26f378-0x1)/(_0x581db8-_0x5026e5);for(let _0x5ae21f=0x1;_0x5ae21f<_0x581db8-_0x5026e5;_0x5ae21f++){let _0x4ded0b=0x0;for(let _0x107edd=Math[_0x2a3f80(0x18b)](_0x5ae21f*_0x2aa652);_0x107edd<Math[_0x2a3f80(0x18b)]((_0x5ae21f+0x1)*_0x2aa652);_0x107edd++)_0x4ded0b+=_0x19dc74[Math[_0x2a3f80(0x19d)](_0x107edd+_0x5026e5,_0x26f378-0x1)];_0x148ff5['push'](_0x4ded0b/(Math[_0x2a3f80(0x18b)]((_0x5ae21f+0x1)*_0x2aa652)-Math['floor'](_0x5ae21f*_0x2aa652)));}for(let _0x102743=0x0;_0x102743<=_0x5026e5;_0x102743++)_0x148ff5['push'](0x1);return _0x148ff5;},'_basis_function':function(_0x45bf1c,_0x5d41d9,_0xa0d95a,_0x26f25a){const _0x1135e1=a0_0x772e08;if(_0x5d41d9===0x0)return _0xa0d95a===_0x26f25a[_0x26f25a[_0x1135e1(0x1ee)]-0x1]&&_0xa0d95a===_0x26f25a[_0x45bf1c+0x1]&&_0xa0d95a>_0x26f25a[_0x45bf1c]||_0xa0d95a>=_0x26f25a[_0x45bf1c]&&_0xa0d95a<_0x26f25a[_0x45bf1c+0x1]?0x1:0x0;let _0x3ede9e=0x0,_0x5f0125=0x0,_0x1bc363=_0x26f25a[_0x45bf1c+_0x5d41d9]-_0x26f25a[_0x45bf1c];_0x1bc363!==0x0&&(_0x3ede9e=(_0xa0d95a-_0x26f25a[_0x45bf1c])/_0x1bc363*this[_0x1135e1(0x1b7)](_0x45bf1c,_0x5d41d9-0x1,_0xa0d95a,_0x26f25a));let _0x2efa8e=_0x26f25a[_0x45bf1c+_0x5d41d9+0x1]-_0x26f25a[_0x45bf1c+0x1];return _0x2efa8e!==0x0&&(_0x5f0125=(_0x26f25a[_0x45bf1c+_0x5d41d9+0x1]-_0xa0d95a)/_0x2efa8e*this[_0x1135e1(0x1b7)](_0x45bf1c+0x1,_0x5d41d9-0x1,_0xa0d95a,_0x26f25a)),_0x3ede9e+_0x5f0125;},'uniform_knot_spacing':function(_0x52d6d5,_0x39bc96){const _0x1b4e7b=a0_0x772e08;let _0x3d61d8=_0x52d6d5[_0x1b4e7b(0x1ee)]+_0x39bc96+0x1,_0x3f19b1=[],_0x42718c=_0x3d61d8-(_0x39bc96+0x1)*0x2;for(var _0x250b34=0x0;_0x250b34<_0x39bc96+0x1;_0x250b34++)_0x3f19b1[_0x1b4e7b(0x16a)](0x0);for(var _0x250b34=0x0;_0x250b34<_0x42718c;_0x250b34++)_0x3f19b1[_0x1b4e7b(0x16a)](_0x250b34+0x1);let _0x2b06cd=_0x3f19b1[_0x3f19b1[_0x1b4e7b(0x1ee)]-0x1]+0x1;for(var _0x250b34=0x0;_0x250b34<_0x39bc96+0x1;_0x250b34++)_0x3f19b1[_0x1b4e7b(0x16a)](_0x2b06cd);return _0x3f19b1;},'bspline':function(_0x4f3ddf,_0x59e206,_0x1ff4cf,_0x1bb3be,_0x38c8c3,_0x341562){const _0x1688d6=a0_0x772e08;var _0x5d9f7e,_0x25f42f,_0x46d0d4,_0x37e235,_0x5cfa88=_0x1ff4cf['length'],_0x2e8cbb=_0x1ff4cf[0x0][_0x1688d6(0x1ee)];if(_0x59e206<0x1)throw new Error(_0x1688d6(0x1b0));if(_0x59e206>_0x5cfa88-0x1)throw new Error(_0x1688d6(0x1e1));if(!_0x38c8c3){for(_0x38c8c3=[],_0x5d9f7e=0x0;_0x5d9f7e<_0x5cfa88;_0x5d9f7e++)_0x38c8c3[_0x5d9f7e]=0x1;}if(_0x1bb3be){if(_0x1bb3be[_0x1688d6(0x1ee)]!==_0x5cfa88+_0x59e206+0x1)throw new Error(_0x1688d6(0x1a9));}else{var _0x1bb3be=[];for(_0x5d9f7e=0x0;_0x5d9f7e<_0x5cfa88+_0x59e206+0x1;_0x5d9f7e++)_0x1bb3be[_0x5d9f7e]=_0x5d9f7e;}var _0xfbb96d=[_0x59e206,_0x1bb3be['length']-0x1-_0x59e206],_0x5dd56f=_0x1bb3be[_0xfbb96d[0x0]],_0x423165=_0x1bb3be[_0xfbb96d[0x1]];if(_0x4f3ddf=_0x4f3ddf*(_0x423165-_0x5dd56f)+_0x5dd56f,_0x4f3ddf<_0x5dd56f||_0x4f3ddf>_0x423165)throw new Error(_0x1688d6(0x1c5));for(_0x46d0d4=_0xfbb96d[0x0];_0x46d0d4<_0xfbb96d[0x1]&&!(_0x4f3ddf>=_0x1bb3be[_0x46d0d4]&&_0x4f3ddf<=_0x1bb3be[_0x46d0d4+0x1]);_0x46d0d4++);var _0x47107a=[];for(_0x5d9f7e=0x0;_0x5d9f7e<_0x5cfa88;_0x5d9f7e++){for(_0x47107a[_0x5d9f7e]=[],_0x25f42f=0x0;_0x25f42f<_0x2e8cbb;_0x25f42f++)_0x47107a[_0x5d9f7e][_0x25f42f]=_0x1ff4cf[_0x5d9f7e][_0x25f42f]*_0x38c8c3[_0x5d9f7e];_0x47107a[_0x5d9f7e][_0x2e8cbb]=_0x38c8c3[_0x5d9f7e];}var _0x5ba46b;for(_0x37e235=0x1;_0x37e235<=_0x59e206+0x1;_0x37e235++)for(_0x5d9f7e=_0x46d0d4;_0x5d9f7e>_0x46d0d4-_0x59e206-0x1+_0x37e235;_0x5d9f7e--)for(_0x5ba46b=(_0x4f3ddf-_0x1bb3be[_0x5d9f7e])/(_0x1bb3be[_0x5d9f7e+_0x59e206+0x1-_0x37e235]-_0x1bb3be[_0x5d9f7e]),_0x25f42f=0x0;_0x25f42f<_0x2e8cbb+0x1;_0x25f42f++)_0x47107a[_0x5d9f7e][_0x25f42f]=(0x1-_0x5ba46b)*_0x47107a[_0x5d9f7e-0x1][_0x25f42f]+_0x5ba46b*_0x47107a[_0x5d9f7e][_0x25f42f];var _0x341562=_0x341562||[];for(_0x5d9f7e=0x0;_0x5d9f7e<_0x2e8cbb;_0x5d9f7e++)_0x341562[_0x5d9f7e]=_0x47107a[_0x46d0d4][_0x5d9f7e]/_0x47107a[_0x46d0d4][_0x2e8cbb];return _0x341562;}},k={'from_control_points':function(_0x1a75b1,_0x29031e,_0x4127fb,_0x56443a,_0x4b4e2e){const _0x37bf8f=a0_0x772e08;_0x56443a===void 0x0&&(_0x56443a=this[_0x37bf8f(0x168)](_0x1a75b1,_0x29031e)),_0x4b4e2e===void 0x0&&(_0x4b4e2e=new Array(_0x1a75b1[_0x37bf8f(0x1ee)])[_0x37bf8f(0x15c)](0x1));let _0x1ae6fd=L[_0x37bf8f(0x1da)](0x0,0x1,_0x4127fb),_0x4a42f2=[];for(var _0x1afa06 of _0x1ae6fd)_0x4a42f2[_0x37bf8f(0x16a)](this[_0x37bf8f(0x172)](_0x1afa06,_0x29031e,_0x1a75b1,_0x56443a,_0x4b4e2e));return _0x4a42f2;},'from_control_points_cosine':function(_0x128db6,_0x19bcc0,_0x412007,_0x4fa47,_0x22e946){const _0x550ea9=a0_0x772e08;_0x4fa47===void 0x0&&(_0x4fa47=this['uniform_knot_spacing'](_0x128db6,_0x19bcc0)),_0x22e946===void 0x0&&(_0x22e946=new Array(_0x128db6[_0x550ea9(0x1ee)])['fill'](0x1));let _0x32291a=L[_0x550ea9(0x165)](_0x412007),_0x428a2e=[];for(var _0x4272ec of _0x32291a)_0x428a2e[_0x550ea9(0x16a)](this[_0x550ea9(0x172)](_0x4272ec,_0x19bcc0,_0x128db6,_0x4fa47,_0x22e946));return _0x428a2e;},'approximate_curve':function(_0x5996d7,_0x1d8342,_0x564e3d=0x3,_0x3bbdcb=!0x1,_0x11233e=a0_0x772e08(0x178),_0x5a2750=!0x1){const _0x86bd94=a0_0x772e08;if(_0x1d8342<_0x564e3d+0x1)throw new Error('resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201');if(_0x5996d7[_0x86bd94(0x1ee)]<0x2)throw new Error(_0x86bd94(0x1e0));let _0x30ee30=_0x5996d7;_0x5a2750&&(_0x30ee30=this[_0x86bd94(0x19e)](_0x5996d7,_0x5996d7['length']));let _0x5ca093=_0x30ee30['length'],_0x4b30f3=_0x1d8342,_0x57ff71=_0x30ee30[0x0][_0x86bd94(0x1ee)],_0x1c625b,_0x3e8666;switch(_0x11233e){case _0x86bd94(0x1cf):_0x1c625b=this[_0x86bd94(0x1a4)](_0x30ee30),_0x3e8666=this[_0x86bd94(0x156)](_0x4b30f3,_0x564e3d);break;case _0x86bd94(0x191):_0x1c625b=this['_chord_length_parameterization'](_0x30ee30),_0x3e8666=this[_0x86bd94(0x16f)](_0x1c625b,_0x4b30f3,_0x564e3d);break;case _0x86bd94(0x178):default:_0x1c625b=this[_0x86bd94(0x179)](_0x30ee30),_0x3e8666=this['_approximate_knot_vector'](_0x1c625b,_0x4b30f3,_0x564e3d);break;}let _0x52d0d8=[];for(let _0x3310ce=0x0;_0x3310ce<_0x5ca093;_0x3310ce++){_0x52d0d8[_0x3310ce]=[];for(let _0x1f9142=0x0;_0x1f9142<_0x4b30f3;_0x1f9142++)_0x52d0d8[_0x3310ce][_0x1f9142]=this[_0x86bd94(0x1b7)](_0x1f9142,_0x564e3d,_0x1c625b[_0x3310ce],_0x3e8666);}let _0x181779=new Array(_0x4b30f3);for(let _0x4aac4c=0x0;_0x4aac4c<_0x4b30f3;_0x4aac4c++)_0x181779[_0x4aac4c]=new Array(_0x57ff71);let _0x130797=new Array(_0x4b30f3)[_0x86bd94(0x15c)](0x1);if(_0x3bbdcb){_0x181779[0x0]=[..._0x30ee30[0x0]],_0x181779[_0x4b30f3-0x1]=[..._0x30ee30[_0x30ee30[_0x86bd94(0x1ee)]-0x1]];let _0x40a784=[];for(let _0x245772=0x1;_0x245772<_0x4b30f3-0x1;_0x245772++)_0x40a784[_0x86bd94(0x16a)](_0x245772);for(let _0x41095a=0x0;_0x41095a<_0x57ff71;_0x41095a++){let _0x50c40d=_0x30ee30[_0x86bd94(0x1c7)](_0x1dcd55=>_0x1dcd55[_0x41095a]);if(_0x40a784['length']===0x0)continue;let _0x38e925=[],_0x3811e6=[];for(let _0x2689d6=0x0;_0x2689d6<_0x5ca093;_0x2689d6++){_0x38e925[_0x2689d6]=[];for(let _0x2a2957 of _0x40a784)_0x38e925[_0x2689d6][_0x86bd94(0x16a)](_0x52d0d8[_0x2689d6][_0x2a2957]);_0x3811e6[_0x2689d6]=_0x50c40d[_0x2689d6]-_0x52d0d8[_0x2689d6][0x0]*_0x181779[0x0][_0x41095a]-_0x52d0d8[_0x2689d6][_0x4b30f3-0x1]*_0x181779[_0x4b30f3-0x1][_0x41095a];}let _0x386d3c=$[_0x86bd94(0x1c3)](_0x38e925,_0x38e925),_0x5ae938=$['vectorMultiplyTranspose'](_0x38e925,_0x3811e6),_0x52bed9=L[_0x86bd94(0x19f)](_0x386d3c,_0x5ae938);for(let _0x37bf4c=0x0;_0x37bf4c<_0x40a784[_0x86bd94(0x1ee)];_0x37bf4c++)_0x181779[_0x40a784[_0x37bf4c]][_0x41095a]=_0x52bed9[_0x37bf4c];}}else for(let _0x3f8e0f=0x0;_0x3f8e0f<_0x57ff71;_0x3f8e0f++){let _0x49ca1c=_0x30ee30[_0x86bd94(0x1c7)](_0x179a0c=>_0x179a0c[_0x3f8e0f]),_0x2c26ad=$[_0x86bd94(0x1c3)](_0x52d0d8,_0x52d0d8),_0x371ff2=$[_0x86bd94(0x1bc)](_0x52d0d8,_0x49ca1c),_0x324d52=L[_0x86bd94(0x19f)](_0x2c26ad,_0x371ff2);for(let _0x439fe2=0x0;_0x439fe2<_0x4b30f3;_0x439fe2++)_0x181779[_0x439fe2][_0x3f8e0f]=_0x324d52[_0x439fe2];}return{'controlPoints':_0x181779,'knots':_0x3e8666,'weights':_0x130797,'degree':_0x564e3d};},'_resample_to_uniform_arc_length':function(_0x5e64dd,_0x2f088d){const _0x5e7426=a0_0x772e08;if(_0x5e64dd[_0x5e7426(0x1ee)]<0x2)return _0x5e64dd;let _0x5030ad=[0x0],_0x2a9477=0x0;for(let _0x5376e9=0x1;_0x5376e9<_0x5e64dd[_0x5e7426(0x1ee)];_0x5376e9++){let _0x3f861a=0x0;for(let _0x1bf346=0x0;_0x1bf346<_0x5e64dd[_0x5376e9][_0x5e7426(0x1ee)];_0x1bf346++)_0x3f861a+=Math[_0x5e7426(0x1e8)](_0x5e64dd[_0x5376e9][_0x1bf346]-_0x5e64dd[_0x5376e9-0x1][_0x1bf346],0x2);_0x2a9477+=Math['sqrt'](_0x3f861a),_0x5030ad[_0x5e7426(0x16a)](_0x2a9477);}if(_0x2a9477===0x0)return _0x5e64dd;let _0x345039=[],_0xb32b35=_0x2a9477/(_0x2f088d-0x1);for(let _0x51c37f=0x0;_0x51c37f<_0x2f088d;_0x51c37f++){let _0x2c530a=_0x51c37f*_0xb32b35,_0x102241=0x0;for(let _0x80341b=0x1;_0x80341b<_0x5030ad[_0x5e7426(0x1ee)];_0x80341b++){if(_0x5030ad[_0x80341b]>=_0x2c530a){_0x102241=_0x80341b-0x1;break;}_0x102241=_0x80341b-0x1;}if(_0x102241>=_0x5e64dd[_0x5e7426(0x1ee)]-0x1){_0x345039[_0x5e7426(0x16a)]([..._0x5e64dd[_0x5e64dd[_0x5e7426(0x1ee)]-0x1]]);continue;}let _0x3a529c=_0x5030ad[_0x102241],_0x23281c=_0x5030ad[_0x102241+0x1]-_0x3a529c,_0xfe6daa=0x0;_0x23281c>0x0&&(_0xfe6daa=(_0x2c530a-_0x3a529c)/_0x23281c);let _0xc3cdd9=_0x5e64dd[_0x102241],_0xa162b4=_0x5e64dd[_0x102241+0x1],_0x238e24=[];for(let _0x2d6324=0x0;_0x2d6324<_0xc3cdd9[_0x5e7426(0x1ee)];_0x2d6324++)_0x238e24['push'](_0xc3cdd9[_0x2d6324]+_0xfe6daa*(_0xa162b4[_0x2d6324]-_0xc3cdd9[_0x2d6324]));_0x345039['push'](_0x238e24);}return _0x345039;},'_uniform_parameterization':function(_0x1efe39){const _0x4deed4=a0_0x772e08;let _0x289614=[];for(let _0x451583=0x0;_0x451583<_0x1efe39[_0x4deed4(0x1ee)];_0x451583++)_0x289614[_0x4deed4(0x16a)](_0x451583/(_0x1efe39[_0x4deed4(0x1ee)]-0x1));return _0x289614;},'_uniform_knot_vector':function(_0x4cffcb,_0x454f52){const _0x12f340=a0_0x772e08;let _0x3cc3a3=_0x4cffcb,_0x107504=[],_0x2757be=_0x3cc3a3-_0x454f52-0x1;for(let _0x459787=0x0;_0x459787<=_0x454f52;_0x459787++)_0x107504['push'](0x0);for(let _0x2a2ef9=0x1;_0x2a2ef9<=_0x2757be;_0x2a2ef9++)_0x107504[_0x12f340(0x16a)](_0x2a2ef9/(_0x2757be+0x1));for(let _0x3d3bc7=0x0;_0x3d3bc7<=_0x454f52;_0x3d3bc7++)_0x107504[_0x12f340(0x16a)](0x1);return _0x107504;},'_centripetal_parameterization':function(_0x5c9678){const _0x400e4c=a0_0x772e08;let _0x440321=[0x0],_0x4e02c0=[0x0],_0x1e3fa7=0x0;for(let _0x5a2296=0x1;_0x5a2296<_0x5c9678[_0x400e4c(0x1ee)];_0x5a2296++){let _0x419390=0x0;for(let _0x28bfbb=0x0;_0x28bfbb<_0x5c9678[_0x5a2296][_0x400e4c(0x1ee)];_0x28bfbb++)_0x419390+=Math[_0x400e4c(0x1e8)](_0x5c9678[_0x5a2296][_0x28bfbb]-_0x5c9678[_0x5a2296-0x1][_0x28bfbb],0x2);_0x419390=Math[_0x400e4c(0x1e8)](_0x419390,0.25),_0x1e3fa7+=_0x419390,_0x4e02c0[_0x400e4c(0x16a)](_0x1e3fa7);}for(let _0x427d7f=0x1;_0x427d7f<_0x5c9678[_0x400e4c(0x1ee)];_0x427d7f++)_0x440321['push'](_0x4e02c0[_0x427d7f]/_0x1e3fa7);return _0x440321;},'_chord_length_parameterization':function(_0x3aea77){const _0x21aabf=a0_0x772e08;let _0xb4499=[0x0],_0x32ddd1=[0x0],_0x364714=0x0;for(let _0x59e595=0x1;_0x59e595<_0x3aea77[_0x21aabf(0x1ee)];_0x59e595++){let _0x154c82=0x0;for(let _0x345c8a=0x0;_0x345c8a<_0x3aea77[_0x59e595][_0x21aabf(0x1ee)];_0x345c8a++)_0x154c82+=Math[_0x21aabf(0x1e8)](_0x3aea77[_0x59e595][_0x345c8a]-_0x3aea77[_0x59e595-0x1][_0x345c8a],0x2);_0x154c82=Math[_0x21aabf(0x1dc)](_0x154c82),_0x364714+=_0x154c82,_0x32ddd1[_0x21aabf(0x16a)](_0x364714);}for(let _0x1df89a=0x1;_0x1df89a<_0x3aea77[_0x21aabf(0x1ee)];_0x1df89a++)_0xb4499['push'](_0x32ddd1[_0x1df89a]/_0x364714);return _0xb4499;},'_approximate_knot_vector':function(_0x244b4b,_0x5975b8,_0xaedf98){const _0x114ce7=a0_0x772e08;let _0x3be09e=_0x244b4b[_0x114ce7(0x1ee)],_0x4a7dad=_0x5975b8,_0x4088d1=[];for(let _0x528330=0x0;_0x528330<=_0xaedf98;_0x528330++)_0x4088d1[_0x114ce7(0x16a)](0x0);let _0x282af0=(_0x3be09e-0x1)/(_0x4a7dad-_0xaedf98);for(let _0x3ed634=0x1;_0x3ed634<_0x4a7dad-_0xaedf98;_0x3ed634++){let _0x299f5b=0x0;for(let _0xdb67a9=Math[_0x114ce7(0x18b)](_0x3ed634*_0x282af0);_0xdb67a9<Math['floor']((_0x3ed634+0x1)*_0x282af0);_0xdb67a9++)_0x299f5b+=_0x244b4b[Math['min'](_0xdb67a9+_0xaedf98,_0x3be09e-0x1)];_0x4088d1[_0x114ce7(0x16a)](_0x299f5b/(Math[_0x114ce7(0x18b)]((_0x3ed634+0x1)*_0x282af0)-Math[_0x114ce7(0x18b)](_0x3ed634*_0x282af0)));}for(let _0x2af364=0x0;_0x2af364<=_0xaedf98;_0x2af364++)_0x4088d1['push'](0x1);return _0x4088d1;},'_basis_function':function(_0x1e6678,_0x36afb6,_0x4f4635,_0x1beab6){const _0x5c4842=a0_0x772e08;if(_0x36afb6===0x0)return _0x4f4635===_0x1beab6[_0x1beab6[_0x5c4842(0x1ee)]-0x1]&&_0x4f4635===_0x1beab6[_0x1e6678+0x1]&&_0x4f4635>_0x1beab6[_0x1e6678]||_0x4f4635>=_0x1beab6[_0x1e6678]&&_0x4f4635<_0x1beab6[_0x1e6678+0x1]?0x1:0x0;let _0x331f8=0x0,_0x3aa4be=0x0,_0x1e963b=_0x1beab6[_0x1e6678+_0x36afb6]-_0x1beab6[_0x1e6678];_0x1e963b!==0x0&&(_0x331f8=(_0x4f4635-_0x1beab6[_0x1e6678])/_0x1e963b*this['_basis_function'](_0x1e6678,_0x36afb6-0x1,_0x4f4635,_0x1beab6));let _0x5208af=_0x1beab6[_0x1e6678+_0x36afb6+0x1]-_0x1beab6[_0x1e6678+0x1];return _0x5208af!==0x0&&(_0x3aa4be=(_0x1beab6[_0x1e6678+_0x36afb6+0x1]-_0x4f4635)/_0x5208af*this[_0x5c4842(0x1b7)](_0x1e6678+0x1,_0x36afb6-0x1,_0x4f4635,_0x1beab6)),_0x331f8+_0x3aa4be;},'uniform_knot_spacing':function(_0x1fa3c9,_0x110713){const _0x21606b=a0_0x772e08;let _0x20558b=_0x1fa3c9[_0x21606b(0x1ee)]+_0x110713+0x1,_0x437fde=[],_0x22924d=_0x20558b-(_0x110713+0x1)*0x2;for(var _0x228f33=0x0;_0x228f33<_0x110713+0x1;_0x228f33++)_0x437fde[_0x21606b(0x16a)](0x0);for(var _0x228f33=0x0;_0x228f33<_0x22924d;_0x228f33++)_0x437fde['push'](_0x228f33+0x1);let _0x415d64=_0x437fde[_0x437fde[_0x21606b(0x1ee)]-0x1]+0x1;for(var _0x228f33=0x0;_0x228f33<_0x110713+0x1;_0x228f33++)_0x437fde['push'](_0x415d64);return _0x437fde;},'nurbs':function(_0x32cb79,_0xc0726e,_0x26a1e6,_0x5f5154,_0x465559,_0x4944f6){const _0x5dfc24=a0_0x772e08;var _0x4892e2,_0x274b99,_0x4a4850,_0x1a0895,_0xcf4b6f=_0x26a1e6[_0x5dfc24(0x1ee)],_0x2ca382=_0x26a1e6[0x0]['length'];if(_0xc0726e<0x1)throw new Error(_0x5dfc24(0x1b0));if(_0xc0726e>_0xcf4b6f-0x1)throw new Error(_0x5dfc24(0x1e1));if(!_0x465559){for(_0x465559=[],_0x4892e2=0x0;_0x4892e2<_0xcf4b6f;_0x4892e2++)_0x465559[_0x4892e2]=0x1;}if(_0x5f5154){if(_0x5f5154[_0x5dfc24(0x1ee)]!==_0xcf4b6f+_0xc0726e+0x1)throw new Error('bad\x20knot\x20vector\x20length');}else{for(_0x5f5154=[],_0x4892e2=0x0;_0x4892e2<_0xcf4b6f+_0xc0726e+0x1;_0x4892e2++)_0x5f5154[_0x4892e2]=_0x4892e2;}var _0x5c9579=[_0xc0726e,_0x5f5154['length']-0x1-_0xc0726e],_0xcdc31c=_0x5f5154[_0x5c9579[0x0]],_0x5b4128=_0x5f5154[_0x5c9579[0x1]];if(_0x32cb79=_0x32cb79*(_0x5b4128-_0xcdc31c)+_0xcdc31c,_0x32cb79<_0xcdc31c||_0x32cb79>_0x5b4128)throw new Error('out\x20of\x20bounds');for(_0x4a4850=_0x5c9579[0x0];_0x4a4850<_0x5c9579[0x1]&&!(_0x32cb79>=_0x5f5154[_0x4a4850]&&_0x32cb79<=_0x5f5154[_0x4a4850+0x1]);_0x4a4850++);var _0x1ba311=[];for(_0x4892e2=0x0;_0x4892e2<_0xcf4b6f;_0x4892e2++){for(_0x1ba311[_0x4892e2]=[],_0x274b99=0x0;_0x274b99<_0x2ca382;_0x274b99++)_0x1ba311[_0x4892e2][_0x274b99]=_0x26a1e6[_0x4892e2][_0x274b99]*_0x465559[_0x4892e2];_0x1ba311[_0x4892e2][_0x2ca382]=_0x465559[_0x4892e2];}var _0x3671d1;for(_0x1a0895=0x1;_0x1a0895<=_0xc0726e+0x1;_0x1a0895++)for(_0x4892e2=_0x4a4850;_0x4892e2>_0x4a4850-_0xc0726e-0x1+_0x1a0895;_0x4892e2--)for(_0x3671d1=(_0x32cb79-_0x5f5154[_0x4892e2])/(_0x5f5154[_0x4892e2+_0xc0726e+0x1-_0x1a0895]-_0x5f5154[_0x4892e2]),_0x274b99=0x0;_0x274b99<_0x2ca382+0x1;_0x274b99++)_0x1ba311[_0x4892e2][_0x274b99]=(0x1-_0x3671d1)*_0x1ba311[_0x4892e2-0x1][_0x274b99]+_0x3671d1*_0x1ba311[_0x4892e2][_0x274b99];for(_0x4944f6=_0x4944f6||[],_0x4892e2=0x0;_0x4892e2<_0x2ca382;_0x4892e2++)_0x4944f6[_0x4892e2]=_0x1ba311[_0x4a4850][_0x4892e2]/_0x1ba311[_0x4a4850][_0x2ca382];return _0x4944f6;},'nurbs_derivative':function(_0x283ecb,_0x231735,_0xf7f2b5,_0x535afb,_0x2b6994){const _0x52931a=a0_0x772e08;var _0x285809=_0xf7f2b5['length'],_0x3e47dd=_0xf7f2b5[0x0][_0x52931a(0x1ee)];if(_0x2b6994||(_0x2b6994=new Array(_0x285809)[_0x52931a(0x15c)](0x1)),!_0x535afb){_0x535afb=[];for(var _0x1a9521=0x0;_0x1a9521<_0x285809+_0x231735+0x1;_0x1a9521++)_0x535afb[_0x1a9521]=_0x1a9521;}for(var _0x5e5cae=[],_0x1a9521=0x0;_0x1a9521<_0x285809;_0x1a9521++){_0x5e5cae[_0x1a9521]=[];for(var _0x5b632f=0x0;_0x5b632f<_0x3e47dd;_0x5b632f++)_0x5e5cae[_0x1a9521][_0x5b632f]=_0xf7f2b5[_0x1a9521][_0x5b632f]*_0x2b6994[_0x1a9521];_0x5e5cae[_0x1a9521][_0x3e47dd]=_0x2b6994[_0x1a9521];}for(var _0x3a045e=[],_0x1a9521=0x0;_0x1a9521<_0x285809-0x1;_0x1a9521++){_0x3a045e[_0x1a9521]=[];for(var _0x1100ba=_0x231735/(_0x535afb[_0x1a9521+_0x231735+0x1]-_0x535afb[_0x1a9521+0x1]),_0x5b632f=0x0;_0x5b632f<=_0x3e47dd;_0x5b632f++)_0x3a045e[_0x1a9521][_0x5b632f]=_0x1100ba*(_0x5e5cae[_0x1a9521+0x1][_0x5b632f]-_0x5e5cae[_0x1a9521][_0x5b632f]);}for(var _0x1136b3=[_0x231735,_0x535afb[_0x52931a(0x1ee)]-0x1-_0x231735],_0x289a13=_0x535afb[_0x1136b3[0x0]],_0x111bea=_0x535afb[_0x1136b3[0x1]],_0x186ba2=_0x283ecb*(_0x111bea-_0x289a13)+_0x289a13,_0x5233ad=this[_0x52931a(0x172)](_0x283ecb,_0x231735,_0xf7f2b5,_0x535afb,_0x2b6994),_0x32592f=_0x535afb[_0x52931a(0x1a8)](0x1,_0x535afb[_0x52931a(0x1ee)]-0x1),_0x41c272=new Array(_0x3e47dd)[_0x52931a(0x15c)](0x0),_0x2d51da=0x0,_0x1a9521=0x0;_0x1a9521<_0x285809-0x1;_0x1a9521++){for(var _0x316c6e=this[_0x52931a(0x1b7)](_0x1a9521,_0x231735-0x1,_0x186ba2,_0x32592f),_0x5b632f=0x0;_0x5b632f<_0x3e47dd;_0x5b632f++)_0x41c272[_0x5b632f]+=_0x316c6e*_0x3a045e[_0x1a9521][_0x5b632f];_0x2d51da+=_0x316c6e*_0x3a045e[_0x1a9521][_0x3e47dd];}for(var _0x5b6f4e=0x0,_0x1a9521=0x0;_0x1a9521<_0x285809;_0x1a9521++){var _0x316c6e=this[_0x52931a(0x1b7)](_0x1a9521,_0x231735,_0x186ba2,_0x535afb);_0x5b6f4e+=_0x316c6e*_0x2b6994[_0x1a9521];}for(var _0x434410=[],_0x5b632f=0x0;_0x5b632f<_0x3e47dd;_0x5b632f++)_0x434410[_0x5b632f]=(_0x41c272[_0x5b632f]-_0x2d51da*_0x5233ad[_0x5b632f])/_0x5b6f4e;return _0x434410;},'insert_knot':function(_0x1226ff,_0x5cd2f0,_0x37d410,_0x4201e3,_0x1588b2){const _0x5f4499=a0_0x772e08;var _0x1e2d5e=_0x1226ff[_0x5f4499(0x1ee)],_0x191e81=_0x1226ff[0x0][_0x5f4499(0x1ee)];_0x4201e3||(_0x4201e3=new Array(_0x1e2d5e)[_0x5f4499(0x15c)](0x1));for(var _0x5e3c70=0x0,_0x1d1ce0=0x0;_0x1d1ce0<_0x37d410[_0x5f4499(0x1ee)]-0x1;_0x1d1ce0++)if(_0x1588b2>=_0x37d410[_0x1d1ce0]&&_0x1588b2<_0x37d410[_0x1d1ce0+0x1]){_0x5e3c70=_0x1d1ce0;break;}for(var _0x4c10d9=[],_0x1d1ce0=0x0;_0x1d1ce0<_0x1e2d5e;_0x1d1ce0++){_0x4c10d9[_0x1d1ce0]=[];for(var _0x57b371=0x0;_0x57b371<_0x191e81;_0x57b371++)_0x4c10d9[_0x1d1ce0][_0x57b371]=_0x1226ff[_0x1d1ce0][_0x57b371]*_0x4201e3[_0x1d1ce0];_0x4c10d9[_0x1d1ce0][_0x191e81]=_0x4201e3[_0x1d1ce0];}for(var _0x4b5fea=[],_0x1d1ce0=0x0;_0x1d1ce0<=_0x5e3c70-_0x5cd2f0;_0x1d1ce0++)_0x4b5fea[_0x1d1ce0]=_0x4c10d9[_0x1d1ce0]['slice']();for(var _0x1d1ce0=_0x5e3c70-_0x5cd2f0+0x1;_0x1d1ce0<=_0x5e3c70;_0x1d1ce0++){var _0x9b0ad8=(_0x1588b2-_0x37d410[_0x1d1ce0])/(_0x37d410[_0x1d1ce0+_0x5cd2f0]-_0x37d410[_0x1d1ce0]);_0x4b5fea[_0x1d1ce0]=[];for(var _0x57b371=0x0;_0x57b371<=_0x191e81;_0x57b371++)_0x4b5fea[_0x1d1ce0][_0x57b371]=(0x1-_0x9b0ad8)*_0x4c10d9[_0x1d1ce0-0x1][_0x57b371]+_0x9b0ad8*_0x4c10d9[_0x1d1ce0][_0x57b371];}for(var _0x1d1ce0=_0x5e3c70+0x1;_0x1d1ce0<=_0x1e2d5e;_0x1d1ce0++)_0x4b5fea[_0x1d1ce0]=_0x4c10d9[_0x1d1ce0-0x1][_0x5f4499(0x1a8)]();for(var _0x5b6bd4=[],_0x41c321=[],_0x1d1ce0=0x0;_0x1d1ce0<_0x4b5fea[_0x5f4499(0x1ee)];_0x1d1ce0++){_0x41c321[_0x1d1ce0]=_0x4b5fea[_0x1d1ce0][_0x191e81],_0x5b6bd4[_0x1d1ce0]=[];for(var _0x57b371=0x0;_0x57b371<_0x191e81;_0x57b371++)_0x5b6bd4[_0x1d1ce0][_0x57b371]=_0x4b5fea[_0x1d1ce0][_0x57b371]/_0x41c321[_0x1d1ce0];}for(var _0x57e013=[],_0x1d1ce0=0x0;_0x1d1ce0<=_0x5e3c70;_0x1d1ce0++)_0x57e013[_0x1d1ce0]=_0x37d410[_0x1d1ce0];_0x57e013[_0x5e3c70+0x1]=_0x1588b2;for(var _0x1d1ce0=_0x5e3c70+0x1;_0x1d1ce0<_0x37d410['length'];_0x1d1ce0++)_0x57e013[_0x1d1ce0+0x1]=_0x37d410[_0x1d1ce0];return{'controlPoints':_0x5b6bd4,'knots':_0x57e013,'weights':_0x41c321,'degree':_0x5cd2f0};},'elevate_degree':function(_0x22150b,_0x5c69b9,_0x243247,_0x5573cc){const _0x2cf00f=a0_0x772e08;var _0x263337=_0x22150b[_0x2cf00f(0x1ee)],_0x2483c8=_0x22150b[0x0][_0x2cf00f(0x1ee)];_0x5573cc||(_0x5573cc=new Array(_0x263337)['fill'](0x1));for(var _0x511a54=[],_0x305f48=0x0;_0x305f48<_0x263337;_0x305f48++){_0x511a54[_0x305f48]=[];for(var _0x597885=0x0;_0x597885<_0x2483c8;_0x597885++)_0x511a54[_0x305f48][_0x597885]=_0x22150b[_0x305f48][_0x597885]*_0x5573cc[_0x305f48];_0x511a54[_0x305f48][_0x2483c8]=_0x5573cc[_0x305f48];}var _0x35f251=[],_0x1fbe9b=_0x5c69b9+0x1;_0x35f251[0x0]=_0x511a54[0x0]['slice']();for(var _0x305f48=0x1;_0x305f48<_0x263337;_0x305f48++){_0x35f251[_0x305f48]=[];for(var _0x360622=_0x305f48/_0x1fbe9b,_0x597885=0x0;_0x597885<=_0x2483c8;_0x597885++)_0x35f251[_0x305f48][_0x597885]=_0x360622*_0x511a54[_0x305f48-0x1][_0x597885]+(0x1-_0x360622)*_0x511a54[_0x305f48][_0x597885];}_0x35f251[_0x263337]=_0x511a54[_0x263337-0x1]['slice']();for(var _0x57155b=[],_0x1f1672=[],_0x305f48=0x0;_0x305f48<_0x35f251['length'];_0x305f48++){_0x1f1672[_0x305f48]=_0x35f251[_0x305f48][_0x2483c8],_0x57155b[_0x305f48]=[];for(var _0x597885=0x0;_0x597885<_0x2483c8;_0x597885++)_0x57155b[_0x305f48][_0x597885]=_0x35f251[_0x305f48][_0x597885]/_0x1f1672[_0x305f48];}var _0x14b12b=this[_0x2cf00f(0x168)](_0x57155b,_0x1fbe9b);return{'controlPoints':_0x57155b,'knots':_0x14b12b,'weights':_0x1f1672,'degree':_0x1fbe9b};},'split_curve':function(_0x3df35d,_0x42669e,_0x2a537e,_0x3f7fb1,_0x550ab9){const _0x5c214e=a0_0x772e08;_0x3f7fb1||(_0x3f7fb1=new Array(_0x3df35d[_0x5c214e(0x1ee)])[_0x5c214e(0x15c)](0x1));for(var _0x42e600=[_0x42669e,_0x2a537e[_0x5c214e(0x1ee)]-0x1-_0x42669e],_0x5dadb5=_0x2a537e[_0x42e600[0x0]],_0x5868fb=_0x2a537e[_0x42e600[0x1]],_0x3c1ade=_0x550ab9*(_0x5868fb-_0x5dadb5)+_0x5dadb5,_0x7aa39={'controlPoints':_0x3df35d,'knots':_0x2a537e,'weights':_0x3f7fb1,'degree':_0x42669e},_0x3f2c21=0x0;_0x3f2c21<_0x42669e;_0x3f2c21++)_0x7aa39=this[_0x5c214e(0x1f3)](_0x7aa39['controlPoints'],_0x42669e,_0x7aa39[_0x5c214e(0x1c2)],_0x7aa39['weights'],_0x3c1ade);for(var _0x39e588=0x0,_0x3f2c21=0x0;_0x3f2c21<_0x7aa39['knots'][_0x5c214e(0x1ee)];_0x3f2c21++)if(_0x7aa39[_0x5c214e(0x1c2)][_0x3f2c21]===_0x3c1ade){_0x39e588=_0x3f2c21-_0x42669e;break;}var _0x47d59a=_0x7aa39[_0x5c214e(0x171)]['slice'](0x0,_0x39e588+0x1),_0x209ab8=_0x7aa39[_0x5c214e(0x1af)][_0x5c214e(0x1a8)](0x0,_0x39e588+0x1),_0x1499af=this[_0x5c214e(0x168)](_0x47d59a,_0x42669e),_0x25a5e1=_0x7aa39[_0x5c214e(0x171)]['slice'](_0x39e588),_0x17c03f=_0x7aa39[_0x5c214e(0x1af)][_0x5c214e(0x1a8)](_0x39e588),_0x32667b=this[_0x5c214e(0x168)](_0x25a5e1,_0x42669e);return{'left':{'controlPoints':_0x47d59a,'knots':_0x1499af,'weights':_0x209ab8,'degree':_0x42669e},'right':{'controlPoints':_0x25a5e1,'knots':_0x32667b,'weights':_0x17c03f,'degree':_0x42669e}};},'create_arc':function(_0x8e69a2,_0x45d806,_0x25ad4e,_0x4f2363,_0x3d2689){const _0x66c457=a0_0x772e08;_0x3d2689=_0x3d2689||[0x0,0x0,0x1];var _0x186d83=_0x4f2363-_0x25ad4e;_0x186d83<0x0&&(_0x186d83+=0x2*Math['PI']);for(var _0x38e5e4=Math[_0x66c457(0x180)](_0x186d83/(Math['PI']/0x2)),_0x4a6b67=_0x186d83/_0x38e5e4,_0x51bad0=[],_0x5d8ac2=[],_0x3f8a98=Math[_0x66c457(0x1bd)](_0x4a6b67/0x2),_0x498958=0x0;_0x498958<=_0x38e5e4;_0x498958++){var _0x2295ac=_0x25ad4e+_0x498958*_0x4a6b67,_0x38e168=_0x8e69a2[0x0]+_0x45d806*Math[_0x66c457(0x1bd)](_0x2295ac),_0x4c3b0d=_0x8e69a2[0x1]+_0x45d806*Math[_0x66c457(0x15d)](_0x2295ac),_0x145ef7=_0x8e69a2[0x2]||0x0;if(_0x51bad0[_0x66c457(0x16a)]([_0x38e168,_0x4c3b0d,_0x145ef7]),_0x5d8ac2['push'](0x1),_0x498958<_0x38e5e4){var _0x4c8cd0=_0x2295ac+_0x4a6b67/0x2,_0x4bb937=_0x45d806/Math[_0x66c457(0x1bd)](_0x4a6b67/0x2),_0x21cdff=_0x8e69a2[0x0]+_0x4bb937*Math[_0x66c457(0x1bd)](_0x4c8cd0),_0x5e4a4d=_0x8e69a2[0x1]+_0x4bb937*Math['sin'](_0x4c8cd0),_0x44e759=_0x8e69a2[0x2]||0x0;_0x51bad0[_0x66c457(0x16a)]([_0x21cdff,_0x5e4a4d,_0x44e759]),_0x5d8ac2[_0x66c457(0x16a)](_0x3f8a98);}}var _0x5896b2=0x2,_0x4c7134=this[_0x66c457(0x168)](_0x51bad0,_0x5896b2);return{'controlPoints':_0x51bad0,'knots':_0x4c7134,'weights':_0x5d8ac2,'degree':_0x5896b2};},'create_circle':function(_0x397c70,_0x213c96,_0x1fb8f9){const _0x3c4582=a0_0x772e08;return this[_0x3c4582(0x1a1)](_0x397c70,_0x213c96,0x0,0x2*Math['PI'],_0x1fb8f9);}},K={'_gaussJ':{'solve':function(_0x135778,_0x26fade){const _0x32dd8c=a0_0x772e08;let _0x40553e=_0x135778[_0x32dd8c(0x1ee)];for(let _0x48e551=0x0;_0x48e551<_0x40553e;_0x48e551++){let _0x2baec3=0x0,_0x266979=Number['NEGATIVE_INFINITY'];for(let _0x5f2cb1=_0x48e551;_0x5f2cb1<_0x40553e;_0x5f2cb1++)Math[_0x32dd8c(0x1c9)](_0x135778[_0x5f2cb1][_0x48e551])>_0x266979&&(_0x2baec3=_0x5f2cb1,_0x266979=Math[_0x32dd8c(0x1c9)](_0x135778[_0x5f2cb1][_0x48e551]));this['swapRows'](_0x135778,_0x48e551,_0x2baec3);for(let _0x32da0f=_0x48e551+0x1;_0x32da0f<_0x40553e;_0x32da0f++){let _0x1b7047=_0x135778[_0x32da0f][_0x48e551]/_0x135778[_0x48e551][_0x48e551];for(let _0x3e48c7=_0x48e551;_0x3e48c7<_0x40553e+0x1;_0x3e48c7++)_0x135778[_0x32da0f][_0x3e48c7]-=_0x135778[_0x48e551][_0x3e48c7]*_0x1b7047;}}for(let _0x32aa02=_0x40553e-0x1;_0x32aa02>=0x0;_0x32aa02--){let _0x27ae8d=_0x135778[_0x32aa02][_0x40553e]/_0x135778[_0x32aa02][_0x32aa02];_0x26fade[_0x32aa02]=_0x27ae8d;for(let _0x4a242b=_0x32aa02-0x1;_0x4a242b>=0x0;_0x4a242b--)_0x135778[_0x4a242b][_0x40553e]-=_0x135778[_0x4a242b][_0x32aa02]*_0x27ae8d,_0x135778[_0x4a242b][_0x32aa02]=0x0;}},'zerosMat':function(_0x50e4c3,_0x100b2c){const _0x40e2fa=a0_0x772e08;let _0x4ac028=[];for(let _0x448aac=0x0;_0x448aac<_0x50e4c3;_0x448aac++)_0x4ac028[_0x40e2fa(0x16a)](new Array(_0x100b2c)[_0x40e2fa(0x15c)](0x0));return _0x4ac028;},'printMat':function(_0x58f17b){const _0x18198b=a0_0x772e08;_0x58f17b[_0x18198b(0x1d7)](_0x22ec47=>console[_0x18198b(0x16d)](_0x22ec47));},'swapRows':function(_0x3a4248,_0xfacba9,_0x18f6cb){let _0x114c35=_0x3a4248[_0xfacba9];_0x3a4248[_0xfacba9]=_0x3a4248[_0x18f6cb],_0x3a4248[_0x18f6cb]=_0x114c35;}},'getNaturalKs':function(_0x59e822,_0x262cbb,_0x1a4ac8){const _0x2af8da=a0_0x772e08;let _0xbe1ab4=_0x59e822['length']-0x1,_0x53c8db=this[_0x2af8da(0x176)][_0x2af8da(0x18d)](_0xbe1ab4+0x1,_0xbe1ab4+0x2);for(let _0x11de6d=0x1;_0x11de6d<_0xbe1ab4;_0x11de6d++)_0x53c8db[_0x11de6d][_0x11de6d-0x1]=0x1/(_0x59e822[_0x11de6d]-_0x59e822[_0x11de6d-0x1]),_0x53c8db[_0x11de6d][_0x11de6d]=0x2*(0x1/(_0x59e822[_0x11de6d]-_0x59e822[_0x11de6d-0x1])+0x1/(_0x59e822[_0x11de6d+0x1]-_0x59e822[_0x11de6d])),_0x53c8db[_0x11de6d][_0x11de6d+0x1]=0x1/(_0x59e822[_0x11de6d+0x1]-_0x59e822[_0x11de6d]),_0x53c8db[_0x11de6d][_0xbe1ab4+0x1]=0x3*((_0x262cbb[_0x11de6d]-_0x262cbb[_0x11de6d-0x1])/(_0x59e822[_0x11de6d]-_0x59e822[_0x11de6d-0x1])**0x2+(_0x262cbb[_0x11de6d+0x1]-_0x262cbb[_0x11de6d])/(_0x59e822[_0x11de6d+0x1]-_0x59e822[_0x11de6d])**0x2);_0x53c8db[0x0][0x0]=0x2/(_0x59e822[0x1]-_0x59e822[0x0]),_0x53c8db[0x0][0x1]=0x1/(_0x59e822[0x1]-_0x59e822[0x0]),_0x53c8db[0x0][_0xbe1ab4+0x1]=0x3*(_0x262cbb[0x1]-_0x262cbb[0x0])/(_0x59e822[0x1]-_0x59e822[0x0])**0x2,_0x53c8db[_0xbe1ab4][_0xbe1ab4-0x1]=0x1/(_0x59e822[_0xbe1ab4]-_0x59e822[_0xbe1ab4-0x1]),_0x53c8db[_0xbe1ab4][_0xbe1ab4]=0x2/(_0x59e822[_0xbe1ab4]-_0x59e822[_0xbe1ab4-0x1]),_0x53c8db[_0xbe1ab4][_0xbe1ab4+0x1]=0x3*(_0x262cbb[_0xbe1ab4]-_0x262cbb[_0xbe1ab4-0x1])/(_0x59e822[_0xbe1ab4]-_0x59e822[_0xbe1ab4-0x1])**0x2,this['_gaussJ']['solve'](_0x53c8db,_0x1a4ac8);},'from_control_points':function(_0x3b75e7,_0x2a43ec){const _0x550dd4=a0_0x772e08;let _0x1a8e60=_0x2a43ec['map'](_0xf51740=>_0xf51740[0x0]),_0x512110=_0x2a43ec[_0x550dd4(0x1c7)](_0x2be3a1=>_0x2be3a1[0x1]),_0x1882b9=new Array(_0x1a8e60[_0x550dd4(0x1ee)])[_0x550dd4(0x15c)](0x0);this[_0x550dd4(0x1b3)](_0x1a8e60,_0x512110,_0x1882b9);let _0x5214eb=[];for(let _0x193a04 of _0x3b75e7){let _0x22a08f=0x1;for(;_0x1a8e60[_0x22a08f]<_0x193a04;)_0x22a08f++;let _0x3c61e9=(_0x193a04-_0x1a8e60[_0x22a08f-0x1])/(_0x1a8e60[_0x22a08f]-_0x1a8e60[_0x22a08f-0x1]),_0x43a228=_0x1882b9[_0x22a08f-0x1]*(_0x1a8e60[_0x22a08f]-_0x1a8e60[_0x22a08f-0x1])-(_0x512110[_0x22a08f]-_0x512110[_0x22a08f-0x1]),_0x58fb78=-_0x1882b9[_0x22a08f]*(_0x1a8e60[_0x22a08f]-_0x1a8e60[_0x22a08f-0x1])+(_0x512110[_0x22a08f]-_0x512110[_0x22a08f-0x1]),_0x5c5b53=(0x1-_0x3c61e9)*_0x512110[_0x22a08f-0x1]+_0x3c61e9*_0x512110[_0x22a08f]+_0x3c61e9*(0x1-_0x3c61e9)*(_0x43a228*(0x1-_0x3c61e9)+_0x58fb78*_0x3c61e9);_0x5214eb[_0x550dd4(0x16a)]([_0x193a04,_0x5c5b53]);}return _0x5214eb;}},A=class{constructor(_0x3be29c){const _0x50efc7=a0_0x772e08;this[_0x50efc7(0x195)]=_0x3be29c,this[_0x50efc7(0x1aa)]=[],this[_0x50efc7(0x1bf)]=[0x0];for(let _0x7955a9=0x1;_0x7955a9<_0x3be29c[_0x50efc7(0x1ee)];_0x7955a9++){let _0xe3c1c1=_0x3be29c[_0x7955a9][0x0]-_0x3be29c[_0x7955a9-0x1][0x0],_0x2118fe=_0x3be29c[_0x7955a9][0x1]-_0x3be29c[_0x7955a9-0x1][0x1],_0x258d2c=_0x3be29c[_0x7955a9][0x2]-_0x3be29c[_0x7955a9-0x1][0x2],_0x59cebb=Math[_0x50efc7(0x1dc)](_0xe3c1c1*_0xe3c1c1+_0x2118fe*_0x2118fe+_0x258d2c*_0x258d2c);this[_0x50efc7(0x1aa)][_0x50efc7(0x16a)](_0x59cebb),this[_0x50efc7(0x1bf)][_0x50efc7(0x16a)](this['cumulativeLength'][this['cumulativeLength'][_0x50efc7(0x1ee)]-0x1]+_0x59cebb);}this['totalLength']=this[_0x50efc7(0x1aa)][_0x50efc7(0x1ee)]>0x0?this[_0x50efc7(0x1bf)][this[_0x50efc7(0x1bf)][_0x50efc7(0x1ee)]-0x1]:0x0;}[a0_0x772e08(0x1ce)](_0xa63123){const _0x49d6de=a0_0x772e08;let _0xec7a1b=0x0,_0x137ad0=Number[_0x49d6de(0x153)];for(let _0x2e8458=0x0;_0x2e8458<this[_0x49d6de(0x195)]['length']-0x1;_0x2e8458++){let _0x513bfa=this[_0x49d6de(0x195)][_0x2e8458],_0x25cc6b=this[_0x49d6de(0x195)][_0x2e8458+0x1],_0x16b64a=_0xa63123,_0x2b9b30=[_0x25cc6b[0x0]-_0x513bfa[0x0],_0x25cc6b[0x1]-_0x513bfa[0x1],_0x25cc6b[0x2]-_0x513bfa[0x2]],_0x561330=[_0x16b64a[0x0]-_0x513bfa[0x0],_0x16b64a[0x1]-_0x513bfa[0x1],_0x16b64a[0x2]-_0x513bfa[0x2]],_0x57e9dc=_0x2b9b30[0x0]*_0x2b9b30[0x0]+_0x2b9b30[0x1]*_0x2b9b30[0x1]+_0x2b9b30[0x2]*_0x2b9b30[0x2];if(_0x57e9dc===0x0)continue;let _0x4d5260=(_0x561330[0x0]*_0x2b9b30[0x0]+_0x561330[0x1]*_0x2b9b30[0x1]+_0x561330[0x2]*_0x2b9b30[0x2])/_0x57e9dc;_0x4d5260=Math[_0x49d6de(0x1f1)](0x0,Math['min'](0x1,_0x4d5260));let _0x4dd6de=[_0x513bfa[0x0]+_0x4d5260*_0x2b9b30[0x0],_0x513bfa[0x1]+_0x4d5260*_0x2b9b30[0x1],_0x513bfa[0x2]+_0x4d5260*_0x2b9b30[0x2]],_0x3dee1f=Math[_0x49d6de(0x1e8)](_0x16b64a[0x0]-_0x4dd6de[0x0],0x2)+Math['pow'](_0x16b64a[0x1]-_0x4dd6de[0x1],0x2)+Math[_0x49d6de(0x1e8)](_0x16b64a[0x2]-_0x4dd6de[0x2],0x2);_0x3dee1f<_0x137ad0&&(_0x137ad0=_0x3dee1f,_0xec7a1b=(this[_0x49d6de(0x1bf)][_0x2e8458]+_0x4d5260*this[_0x49d6de(0x1aa)][_0x2e8458])/this[_0x49d6de(0x19c)]);}return _0xec7a1b;}[a0_0x772e08(0x154)](_0x595fd8){const _0x50267f=a0_0x772e08;if(_0x595fd8<=0x0)return[...this[_0x50267f(0x195)][0x0]];if(_0x595fd8>=0x1)return[...this[_0x50267f(0x195)][this[_0x50267f(0x195)]['length']-0x1]];let _0xeb1de6=_0x595fd8*this[_0x50267f(0x19c)];for(let _0xd358a4=0x0;_0xd358a4<this[_0x50267f(0x1bf)][_0x50267f(0x1ee)]-0x1;_0xd358a4++)if(this[_0x50267f(0x1bf)][_0xd358a4]<=_0xeb1de6&&_0xeb1de6<=this[_0x50267f(0x1bf)][_0xd358a4+0x1]){let _0x277e75=(_0xeb1de6-this['cumulativeLength'][_0xd358a4])/this[_0x50267f(0x1aa)][_0xd358a4],_0x39bb9b=this[_0x50267f(0x195)][_0xd358a4],_0x7b1953=this['points'][_0xd358a4+0x1],_0x81a0c0=(0x1-_0x277e75)*_0x39bb9b[0x0]+_0x277e75*_0x7b1953[0x0],_0x58fdeb=(0x1-_0x277e75)*_0x39bb9b[0x1]+_0x277e75*_0x7b1953[0x1],_0x92a6f8=(0x1-_0x277e75)*_0x39bb9b[0x2]+_0x277e75*_0x7b1953[0x2];return[_0x81a0c0,_0x58fdeb,_0x92a6f8];}return[...this[_0x50267f(0x195)][this[_0x50267f(0x195)][_0x50267f(0x1ee)]-0x1]];}},H={'_formatNumber':function(_0x1b5e96){const _0x5a0f3a=a0_0x772e08;return Number['isInteger'](_0x1b5e96)?_0x1b5e96[_0x5a0f3a(0x1ad)]():Math[_0x5a0f3a(0x1c9)](_0x1b5e96)<0.001||Math['abs'](_0x1b5e96)>0xf4240?_0x1b5e96[_0x5a0f3a(0x1bb)](0x6):_0x1b5e96[_0x5a0f3a(0x177)](0x6)['replace'](/\.?0+$/,'');},'_toHollerith':function(_0x557fce){const _0x65b035=a0_0x772e08;return _0x557fce?_0x557fce[_0x65b035(0x1ee)]+'H'+_0x557fce:'0H';},'_generateGlobalSection':function(_0xe064a4){const _0x5dc4ba=a0_0x772e08;let _0x1f60db=new Date()['toISOString']()['slice'](0x0,0x13)[_0x5dc4ba(0x1ba)](/[-:]/g,'')[_0x5dc4ba(0x1ba)]('T','.'),_0x22aca6=[_0x5dc4ba(0x161),'1H;',this['_toHollerith'](_0xe064a4['filename']),this['_toHollerith'](_0xe064a4['filename']),this[_0x5dc4ba(0x1d8)](_0xe064a4[_0x5dc4ba(0x15e)]),this[_0x5dc4ba(0x1d8)]('js3d\x201.0'),'32','38','6',_0x5dc4ba(0x1f2),'15',this['_toHollerith'](_0xe064a4[_0x5dc4ba(0x184)]),_0x5dc4ba(0x1b9),'3',this[_0x5dc4ba(0x1d8)](_0xe064a4['units'][_0x5dc4ba(0x1a5)]()),'1',_0x5dc4ba(0x185),this[_0x5dc4ba(0x1d8)](_0x1f60db),_0x5dc4ba(0x18f),_0x5dc4ba(0x18e),this['_toHollerith'](_0xe064a4[_0x5dc4ba(0x18c)]),this[_0x5dc4ba(0x1d8)](_0xe064a4['organization']),'11','0',this[_0x5dc4ba(0x1d8)](_0x1f60db)][_0x5dc4ba(0x1f0)](',')+';',_0x433d86='',_0x2ac04f=0x1,_0x3fbca1=0x0;for(;_0x3fbca1<_0x22aca6[_0x5dc4ba(0x1ee)];){let _0x4c6e1c=_0x22aca6[_0x5dc4ba(0x186)](_0x3fbca1,0x48);_0x433d86+=_0x4c6e1c['padEnd'](0x48)+('G'+_0x2ac04f[_0x5dc4ba(0x1ad)]()[_0x5dc4ba(0x1c0)](0x7)+'\x0a'),_0x3fbca1+=0x48,_0x2ac04f++;}return _0x433d86;},'_formatDirectoryLine':function(_0x45499d,_0x4ad484,_0x3a90fc,_0xff7eb6,_0x46bf56,_0x204785,_0x537372,_0x4f38df,_0xf68e3e){const _0x222203=a0_0x772e08;return[_0x45499d['toString']()[_0x222203(0x1c0)](0x8),_0x4ad484[_0x222203(0x1ad)]()[_0x222203(0x1c0)](0x8),_0x3a90fc[_0x222203(0x1ad)]()[_0x222203(0x1c0)](0x8),_0xff7eb6['toString']()[_0x222203(0x1c0)](0x8),_0x46bf56[_0x222203(0x1ad)]()[_0x222203(0x1c0)](0x8),_0x204785['toString']()['padStart'](0x8),_0x537372['toString']()[_0x222203(0x1c0)](0x8),_0x4f38df[_0x222203(0x1ad)]()[_0x222203(0x1c0)](0x8)]['join']('')[_0x222203(0x157)](0x48)+('D'+_0xf68e3e[_0x222203(0x1ad)]()['padStart'](0x7)+'\x0a');},'_formatParameterLine':function(_0x94a61e,_0x248d9d,_0x495bd3){const _0xef611f=a0_0x772e08;let _0x14be55='',_0x3612ef=_0x248d9d,_0x5755bf=0x0;for(;_0x5755bf<_0x94a61e[_0xef611f(0x1ee)];){let _0x646f8e=Math['min'](_0x5755bf+0x40,_0x94a61e[_0xef611f(0x1ee)]);if(_0x646f8e<_0x94a61e[_0xef611f(0x1ee)]&&_0x94a61e[_0x646f8e]!==','){let _0x5ab0d0=_0x94a61e[_0xef611f(0x1b1)](',',_0x646f8e);_0x5ab0d0>_0x5755bf&&(_0x646f8e=_0x5ab0d0+0x1);}let _0x1daa56=_0x94a61e[_0xef611f(0x1ef)](_0x5755bf,_0x646f8e);_0x14be55+=_0x1daa56[_0xef611f(0x157)](0x40)+('\x20'+_0x495bd3[_0xef611f(0x1ad)]()[_0xef611f(0x1c0)](0x7)+'P'+_0x3612ef[_0xef611f(0x1ad)]()[_0xef611f(0x1c0)](0x7)+'\x0a'),_0x5755bf=_0x646f8e,_0x3612ef++;}return _0x14be55;},'_formatSection':function(_0x8d223c,_0x5cc1bd){const _0x459d5a=a0_0x772e08;return _0x5cc1bd[_0x459d5a(0x1c7)]((_0x60bb52,_0x1c9b67)=>_0x60bb52['replace'](/\n$/,'')+'\x0a')[_0x459d5a(0x1f0)]('');},'_formatTerminateSection':function(_0x5727d3,_0x1f9315,_0x3a4af7,_0x3d7624){const _0x2d7f90=a0_0x772e08;return['S'+_0x5727d3[_0x2d7f90(0x1ad)]()[_0x2d7f90(0x1c0)](0x7),'G'+_0x1f9315['toString']()['padStart'](0x7),'D'+_0x3a4af7[_0x2d7f90(0x1ad)]()[_0x2d7f90(0x1c0)](0x7),'P'+_0x3d7624[_0x2d7f90(0x1ad)]()['padStart'](0x7)][_0x2d7f90(0x1f0)]('')['padEnd'](0x48)+_0x2d7f90(0x158);},'_createPointEntity':function(_0xaba1ec,_0x2e47fd,_0x42ac62){const _0x23c2f0=a0_0x772e08;let _0x4aa96d='116,'+this[_0x23c2f0(0x190)](_0xaba1ec[0x0])+','+this[_0x23c2f0(0x190)](_0xaba1ec[0x1])+','+this[_0x23c2f0(0x190)](_0xaba1ec[0x2])+',0.0;',_0x20a09d=_0x2e47fd,_0x2f1a23=this[_0x23c2f0(0x19a)](_0x4aa96d,_0x42ac62,_0x20a09d),_0x1f2080=_0x2f1a23['split']('\x0a')[_0x23c2f0(0x1ee)]-0x1,_0x2bebb0=this[_0x23c2f0(0x194)](0x74,_0x42ac62,0x0,0x0,0x0,0x0,0x0,0x0,_0x2e47fd);return _0x2bebb0+=this[_0x23c2f0(0x194)](0x74,0x0,0x0,_0x1f2080,0x0,0x0,0x0,0x0,_0x2e47fd+0x1),{'directoryEntry':_0x2bebb0,'parameterEntry':_0x2f1a23,'lineCount':_0x1f2080};},'_createPolylineEntity':function(_0x434d8f,_0x3f26f,_0x1dee99){const _0x2753fd=a0_0x772e08;let _0x1cd71d=_0x2753fd(0x173)+(_0x434d8f['length']-0x1);for(let _0x43f314=0x0;_0x43f314<_0x434d8f['length'];_0x43f314++){let _0x8b9e90=_0x434d8f[_0x43f314];_0x1cd71d+=','+this[_0x2753fd(0x190)](_0x8b9e90[0x0])+','+this[_0x2753fd(0x190)](_0x8b9e90[0x1])+','+this[_0x2753fd(0x190)](_0x8b9e90[0x2]);}_0x1cd71d+=';';let _0x16ec6c=_0x3f26f,_0x5a1414=this[_0x2753fd(0x19a)](_0x1cd71d,_0x1dee99,_0x16ec6c),_0x3ed812=_0x5a1414[_0x2753fd(0x163)]('\x0a')[_0x2753fd(0x1ee)]-0x1,_0x37aa77=this['_formatDirectoryLine'](0x6a,_0x1dee99,0x0,0x0,0x0,0x0,0x0,0x0,_0x3f26f);return _0x37aa77+=this[_0x2753fd(0x194)](0x6a,0x0,0x0,_0x3ed812,0x0,0x0,0x0,0x0,_0x3f26f+0x1),{'directoryEntry':_0x37aa77,'parameterEntry':_0x5a1414,'lineCount':_0x3ed812};},'_createNurbsCurveEntity':function(_0x5c7bb0,_0x33cd7c,_0x37167d,_0x3b5020,_0x580c36,_0xe0b554){const _0x5de38b=a0_0x772e08;let _0x491eea=_0x5de38b(0x198)+(_0x5c7bb0[_0x5de38b(0x1ee)]-0x1)+','+_0x3b5020+_0x5de38b(0x17c);for(let _0x2c68cf of _0x37167d)_0x491eea+=','+this['_formatNumber'](_0x2c68cf);for(let _0x2553d3 of _0x33cd7c)_0x491eea+=','+this['_formatNumber'](_0x2553d3);for(let _0x5389f8=0x0;_0x5389f8<_0x5c7bb0[_0x5de38b(0x1ee)];_0x5389f8++){let _0x59c903=_0x5c7bb0[_0x5389f8];_0x491eea+=','+this[_0x5de38b(0x190)](_0x59c903[0x0])+','+this[_0x5de38b(0x190)](_0x59c903[0x1])+','+this[_0x5de38b(0x190)](_0x59c903[0x2]);}_0x491eea+=','+this[_0x5de38b(0x190)](_0x37167d[0x0])+','+this[_0x5de38b(0x190)](_0x37167d[_0x37167d['length']-0x1]),_0x491eea+=_0x5de38b(0x164),_0x491eea+=';';let _0x7d4ca5=_0x580c36,_0x49edbc=this['_formatParameterLine'](_0x491eea,_0xe0b554,_0x7d4ca5),_0x117178=_0x49edbc[_0x5de38b(0x163)]('\x0a')[_0x5de38b(0x1ee)]-0x1,_0x284165=this[_0x5de38b(0x194)](0x7e,_0xe0b554,0x0,0x0,0x0,0x0,0x0,0x0,_0x580c36);return _0x284165+=this[_0x5de38b(0x194)](0x7e,0x0,0x0,_0x117178,0x0,0x0,0x0,0x0,_0x580c36+0x1),{'directoryEntry':_0x284165,'parameterEntry':_0x49edbc,'lineCount':_0x117178};},'_createNurbsSurfaceEntity':function(_0x3abb51,_0x2ccf74,_0x4b7303,_0x220829,_0x19da95,_0xd705e,_0x1b0dd7,_0x4b3750){const _0xf3e74f=a0_0x772e08;let _0x5e2fe1=_0x3abb51[_0xf3e74f(0x1ee)],_0xfebe6d=_0x3abb51[0x0][_0xf3e74f(0x1ee)],_0x4d3aca=_0x5e2fe1-0x1,_0xda6719=_0xfebe6d-0x1,_0x76bfbc=_0xf3e74f(0x181)+_0x4d3aca+','+_0xda6719+','+_0x19da95+','+_0xd705e+_0xf3e74f(0x1e4);for(let _0x30c9f1 of _0x4b7303)_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x30c9f1);for(let _0x12e2da of _0x220829)_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x12e2da);for(let _0x39d27d=0x0;_0x39d27d<=_0xda6719;_0x39d27d++)for(let _0x481c0c=0x0;_0x481c0c<=_0x4d3aca;_0x481c0c++)_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x2ccf74[_0x481c0c][_0x39d27d]);for(let _0x111387=0x0;_0x111387<=_0xda6719;_0x111387++)for(let _0x41b3a9=0x0;_0x41b3a9<=_0x4d3aca;_0x41b3a9++){let _0x45e76f=_0x3abb51[_0x41b3a9][_0x111387];_0x76bfbc+=','+this['_formatNumber'](_0x45e76f[0x0])+','+this[_0xf3e74f(0x190)](_0x45e76f[0x1])+','+this['_formatNumber'](_0x45e76f[0x2]);}_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x4b7303[0x0])+','+this[_0xf3e74f(0x190)](_0x4b7303[_0x4b7303[_0xf3e74f(0x1ee)]-0x1]),_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x220829[0x0])+','+this[_0xf3e74f(0x190)](_0x220829[_0x220829[_0xf3e74f(0x1ee)]-0x1]),_0x76bfbc+=';';let _0xb0fd0f=_0x1b0dd7,_0x4b0a93=this[_0xf3e74f(0x19a)](_0x76bfbc,_0x4b3750,_0xb0fd0f),_0x2626e9=_0x4b0a93[_0xf3e74f(0x163)]('\x0a')[_0xf3e74f(0x1ee)]-0x1,_0x1a53d0=this[_0xf3e74f(0x194)](0x80,_0x4b3750,0x0,0x0,0x0,0x0,0x0,0x0,_0x1b0dd7);return _0x1a53d0+=this['_formatDirectoryLine'](0x80,0x0,0x0,_0x2626e9,0x0,0x0,0x0,0x0,_0x1b0dd7+0x1),{'directoryEntry':_0x1a53d0,'parameterEntry':_0x4b0a93,'lineCount':_0x2626e9};},'nurbsSurfaceToIges':function(_0x45862a,_0x4d3482={}){const _0x39e373=a0_0x772e08;let _0x29c82e={'units':'MM','filename':_0x39e373(0x167),'author':_0x39e373(0x1d2),'organization':'D#','degreeU':0x3,'degreeV':0x3,'weights':null,'knotsU':null,'knotsV':null,..._0x4d3482};if(!Array[_0x39e373(0x1ac)](_0x45862a)||_0x45862a[_0x39e373(0x1ee)]===0x0||!Array[_0x39e373(0x1ac)](_0x45862a[0x0]))throw new Error(_0x39e373(0x1a2));let _0x1fcb90=_0x45862a[_0x39e373(0x1ee)],_0x216dcd=_0x45862a[0x0][_0x39e373(0x1ee)];if(_0x1fcb90<_0x29c82e[_0x39e373(0x169)]+0x1||_0x216dcd<_0x29c82e['degreeV']+0x1)throw new Error('Insufficient\x20control\x20points\x20for\x20specified\x20degrees');let _0x35068c=_0x45862a['map'](_0x35ed6a=>_0x35ed6a[_0x39e373(0x1c7)](_0x13a92b=>{const _0x11e536=_0x39e373;if(!Array[_0x11e536(0x1ac)](_0x13a92b)||_0x13a92b['length']<0x2)throw new Error('Invalid\x20control\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]');return[_0x13a92b[0x0]||0x0,_0x13a92b[0x1]||0x0,_0x13a92b[0x2]||0x0];})),_0x4907f3=_0x29c82e[_0x39e373(0x1af)];_0x4907f3||(_0x4907f3=new Array(_0x1fcb90)[_0x39e373(0x15c)](0x0)[_0x39e373(0x1c7)](()=>new Array(_0x216dcd)[_0x39e373(0x15c)](0x1)));let _0x3e32c0=_0x29c82e[_0x39e373(0x15b)];if(!_0x3e32c0)throw new Error(_0x39e373(0x1c6));let _0xbd6f69=_0x29c82e[_0x39e373(0x1dd)];if(!_0xbd6f69)throw new Error(_0x39e373(0x1c6));let _0x53ef9e='',_0x1d5ac0='',_0x5aee9c='',_0x390b4c=0x1,_0x1b3fe7=0x1;_0x53ef9e=this['_generateGlobalSection'](_0x29c82e);let _0x5d15c7=this['_createNurbsSurfaceEntity'](_0x35068c,_0x4907f3,_0x3e32c0,_0xbd6f69,_0x29c82e[_0x39e373(0x169)],_0x29c82e[_0x39e373(0x17e)],_0x1b3fe7,_0x390b4c);_0x1d5ac0+=_0x5d15c7['directoryEntry'],_0x5aee9c+=_0x5d15c7[_0x39e373(0x1d3)],_0x1b3fe7+=0x2,_0x390b4c+=_0x5d15c7[_0x39e373(0x1ec)];let _0x4eb292=this[_0x39e373(0x1e9)]('START',[_0x39e373(0x1f6),_0x39e373(0x182)]),_0x2959ae=this[_0x39e373(0x1c1)](_0x4eb292[_0x39e373(0x163)]('\x0a')[_0x39e373(0x1ee)]-0x1,_0x53ef9e[_0x39e373(0x163)]('\x0a')['length']-0x1,_0x1d5ac0['split']('\x0a')[_0x39e373(0x1ee)]-0x1,_0x5aee9c['split']('\x0a')['length']-0x1);return _0x4eb292+_0x53ef9e+_0x1d5ac0+_0x5aee9c+_0x2959ae;},'geometryToIges':function(_0x36bc7c,_0x581f1f={}){const _0x4a6064=a0_0x772e08;let _0x16a2d5={'units':'MM','filename':_0x4a6064(0x1a6),'author':_0x4a6064(0x192),'organization':'D3',..._0x581f1f};if(!Array[_0x4a6064(0x1ac)](_0x36bc7c)||_0x36bc7c[_0x4a6064(0x1ee)]===0x0)throw new Error('Geometries\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty');let _0x39d84d='',_0x4bc529='',_0x43b938='',_0x329804=0x1,_0x224d4c=0x1,_0x449971=0x0;_0x39d84d=this[_0x4a6064(0x1c8)](_0x16a2d5);for(let _0x453c54 of _0x36bc7c){if(!_0x453c54||typeof _0x453c54!=_0x4a6064(0x162)||!_0x453c54[_0x4a6064(0x1b5)]||!_0x453c54[_0x4a6064(0x1f7)])throw new Error(_0x4a6064(0x16b));let _0x3d8c64=_0x453c54[_0x4a6064(0x1b5)],_0x27136b=_0x453c54[_0x4a6064(0x1f7)],_0x11e3e6;if(_0x3d8c64===_0x4a6064(0x1a7)?_0x11e3e6=_0x27136b[_0x4a6064(0x1c7)](_0x59bcdc=>_0x59bcdc[_0x4a6064(0x1c7)](_0x436646=>{const _0xe41796=_0x4a6064;if(!Array[_0xe41796(0x1ac)](_0x436646)||_0x436646[_0xe41796(0x1ee)]<0x2)throw new Error(_0xe41796(0x1cc));return[_0x436646[0x0]||0x0,_0x436646[0x1]||0x0,_0x436646[0x2]||0x0];})):_0x11e3e6=_0x27136b[_0x4a6064(0x1c7)](_0xc3df4c=>{const _0x3aebea=_0x4a6064;if(!Array[_0x3aebea(0x1ac)](_0xc3df4c)||_0xc3df4c[_0x3aebea(0x1ee)]<0x2)throw new Error(_0x3aebea(0x1cc));return[_0xc3df4c[0x0]||0x0,_0xc3df4c[0x1]||0x0,_0xc3df4c[0x2]||0x0];}),_0x11e3e6[_0x4a6064(0x1ee)]!==0x0)switch(_0x3d8c64){case _0x4a6064(0x195):for(let _0x40453a of _0x11e3e6){_0x449971++;let _0x43737a=this['_createPointEntity'](_0x40453a,_0x224d4c,_0x329804);_0x4bc529+=_0x43737a[_0x4a6064(0x183)],_0x43b938+=_0x43737a[_0x4a6064(0x1d3)],_0x224d4c+=0x2,_0x329804+=_0x43737a['lineCount'];}break;case _0x4a6064(0x1ed):if(_0x11e3e6['length']>0x1){_0x449971++;let _0x112741=this[_0x4a6064(0x196)](_0x11e3e6,_0x224d4c,_0x329804);_0x4bc529+=_0x112741['directoryEntry'],_0x43b938+=_0x112741['parameterEntry'],_0x224d4c+=0x2,_0x329804+=_0x112741['lineCount'];}break;case _0x4a6064(0x1f5):let _0x2f74e7=_0x453c54['degree']||0x3,_0x4ea98c=_0x11e3e6[_0x4a6064(0x1ee)];if(_0x4ea98c<_0x2f74e7+0x1){console[_0x4a6064(0x1db)](_0x4a6064(0x1df)+(_0x2f74e7+0x1)+'\x20control\x20points\x20for\x20degree\x20'+_0x2f74e7);continue;}let _0xa2c7c0=_0x453c54['weights']||new Array(_0x4ea98c)[_0x4a6064(0x15c)](0x1);if(_0xa2c7c0[_0x4a6064(0x1ee)]!==_0x4ea98c)throw new Error(_0x4a6064(0x159));let _0x523326=_0x453c54[_0x4a6064(0x1c2)],_0x238a84=_0x4ea98c+_0x2f74e7+0x1;if(_0x523326[_0x4a6064(0x1ee)]!==_0x238a84)throw new Error(_0x4a6064(0x1b2)+_0x238a84+_0x4a6064(0x152)+_0x523326['length']);_0x449971++;let _0x1d5da5=this['_createNurbsCurveEntity'](_0x11e3e6,_0xa2c7c0,_0x523326,_0x2f74e7,_0x224d4c,_0x329804);_0x4bc529+=_0x1d5da5[_0x4a6064(0x183)],_0x43b938+=_0x1d5da5['parameterEntry'],_0x224d4c+=0x2,_0x329804+=_0x1d5da5[_0x4a6064(0x1ec)];break;case _0x4a6064(0x1a7):let _0xc53243=_0x453c54['degreeU']||0x3,_0x5e9342=_0x453c54[_0x4a6064(0x17e)]||0x3,_0x4aff77=_0x11e3e6[_0x4a6064(0x1ee)],_0x35f1a1=_0x11e3e6[0x0][_0x4a6064(0x1ee)];if(_0x4aff77<_0xc53243+0x1||_0x35f1a1<_0x5e9342+0x1){console[_0x4a6064(0x1db)](_0x4a6064(0x1e2));continue;}let _0xf736e5=_0x453c54['weights'];_0xf736e5||(_0xf736e5=new Array(_0x4aff77)[_0x4a6064(0x15c)](0x0)[_0x4a6064(0x1c7)](()=>new Array(_0x35f1a1)[_0x4a6064(0x15c)](0x1)));let _0x2a70cf=_0x453c54[_0x4a6064(0x15b)],_0x4c8d78=_0x453c54[_0x4a6064(0x1dd)];if(!_0x2a70cf||!_0x4c8d78)throw new Error(_0x4a6064(0x174));_0x449971++;let _0xfa1c9c=this[_0x4a6064(0x197)](_0x11e3e6,_0xf736e5,_0x2a70cf,_0x4c8d78,_0xc53243,_0x5e9342,_0x224d4c,_0x329804);_0x4bc529+=_0xfa1c9c['directoryEntry'],_0x43b938+=_0xfa1c9c['parameterEntry'],_0x224d4c+=0x2,_0x329804+=_0xfa1c9c[_0x4a6064(0x1ec)];break;default:throw new Error(_0x4a6064(0x15a)+_0x3d8c64+_0x4a6064(0x170));}}if(_0x449971===0x0)throw new Error(_0x4a6064(0x15f));let _0x2948b4=this[_0x4a6064(0x1e9)](_0x4a6064(0x175),[_0x4a6064(0x1f6),'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']),_0xb7bdc5=this['_formatTerminateSection'](_0x2948b4[_0x4a6064(0x163)]('\x0a')['length']-0x1,_0x39d84d['split']('\x0a')['length']-0x1,_0x4bc529[_0x4a6064(0x163)]('\x0a')[_0x4a6064(0x1ee)]-0x1,_0x43b938['split']('\x0a')[_0x4a6064(0x1ee)]-0x1);return _0x2948b4+_0x39d84d+_0x4bc529+_0x43b938+_0xb7bdc5;},'_parseIgesNumber':function(_0x2f6be8){const _0x106121=a0_0x772e08;if(!_0x2f6be8||typeof _0x2f6be8!='string')return 0x0;let _0x2255fd=_0x2f6be8[_0x106121(0x199)]()[_0x106121(0x1ba)](/D([+-]?\d+)/g,_0x106121(0x1b4)),_0x47254f=parseFloat(_0x2255fd);return isNaN(_0x47254f)?0x0:_0x47254f;},'_processEntity':function(_0x3a3336,_0x5ea4ba,_0x1f257e,_0x2eafa4,_0x246181){const _0x575748=a0_0x772e08;let _0x4e82fd=_0x3a3336['replace'](';','')[_0x575748(0x163)](',')[_0x575748(0x1c7)](_0x145b93=>_0x145b93[_0x575748(0x199)]());if(_0x4e82fd['length']===0x0)return;switch(parseInt(_0x4e82fd[0x0])){case 0x74:this[_0x575748(0x187)](_0x4e82fd,_0x1f257e);break;case 0x6a:this['_processPolylineEntity'](_0x4e82fd,_0x5ea4ba);break;case 0x7e:this[_0x575748(0x1d1)](_0x4e82fd,_0x2eafa4);break;case 0x80:_0x246181&&this[_0x575748(0x1e7)](_0x4e82fd,_0x246181);break;case 0x6e:this[_0x575748(0x1b8)](_0x4e82fd,_0x5ea4ba);break;default:break;}},'_processPointEntity':function(_0x5b92c3,_0x561b41){const _0x145104=a0_0x772e08;if(_0x5b92c3[_0x145104(0x1ee)]>=0x4){let _0x37a349=this[_0x145104(0x1c4)](_0x5b92c3[0x1]),_0x1b7ff5=this[_0x145104(0x1c4)](_0x5b92c3[0x2]),_0x46491e=this[_0x145104(0x1c4)](_0x5b92c3[0x3]);_0x561b41['push']([_0x37a349,_0x1b7ff5,_0x46491e]);}},'_processPolylineEntity':function(_0x13caf4,_0x2b80e7){const _0x4be53b=a0_0x772e08;if(_0x13caf4[_0x4be53b(0x1ee)]<0x2)return;let _0x402e3a=parseInt(_0x13caf4[0x1]),_0x2a0a29=0x2+(_0x402e3a+0x1)*0x3;if(_0x13caf4['length']<_0x2a0a29)return;let _0x2e29e4=[];for(let _0x3ab7ee=0x0;_0x3ab7ee<=_0x402e3a;_0x3ab7ee++){let _0xebc892=0x2+_0x3ab7ee*0x3;if(_0xebc892+0x2<_0x13caf4[_0x4be53b(0x1ee)]){let _0x1f7e42=this['_parseIgesNumber'](_0x13caf4[_0xebc892]),_0x314139=this['_parseIgesNumber'](_0x13caf4[_0xebc892+0x1]),_0x7f7a2=this[_0x4be53b(0x1c4)](_0x13caf4[_0xebc892+0x2]);_0x2e29e4['push']([_0x1f7e42,_0x314139,_0x7f7a2]);}}_0x2e29e4['length']>0x1&&_0x2b80e7['push'](_0x2e29e4);},'_processLineEntity':function(_0x1b6343,_0x305921){const _0x3f57f4=a0_0x772e08;if(_0x1b6343[_0x3f57f4(0x1ee)]>=0x7){let _0x2567a4=this[_0x3f57f4(0x1c4)](_0x1b6343[0x1]),_0x27b743=this[_0x3f57f4(0x1c4)](_0x1b6343[0x2]),_0x5405b1=this[_0x3f57f4(0x1c4)](_0x1b6343[0x3]),_0x37bd74=this['_parseIgesNumber'](_0x1b6343[0x4]),_0x29fba6=this[_0x3f57f4(0x1c4)](_0x1b6343[0x5]),_0x3be905=this['_parseIgesNumber'](_0x1b6343[0x6]);_0x305921[_0x3f57f4(0x16a)]([[_0x2567a4,_0x27b743,_0x5405b1],[_0x37bd74,_0x29fba6,_0x3be905]]);}},'_processNurbsCurveEntity':function(_0x1bbf90,_0x1ac135){const _0x5b3f0f=a0_0x772e08;if(_0x1bbf90[_0x5b3f0f(0x1ee)]<0x7)return;let _0x3c35ae=parseInt(_0x1bbf90[0x1]),_0x33a77b=parseInt(_0x1bbf90[0x2]),_0x272d9f=parseInt(_0x1bbf90[0x3]),_0x51617f=parseInt(_0x1bbf90[0x4]),_0x385a1a=parseInt(_0x1bbf90[0x5]),_0x168fc6=parseInt(_0x1bbf90[0x6]),_0x51785a=_0x3c35ae+0x1,_0x35b336=_0x3c35ae+_0x33a77b+0x2,_0x20b8c2=0x7,_0x3e8a21=_0x20b8c2+_0x35b336,_0x25d6b6=_0x3e8a21+_0x51785a+_0x51785a+_0x51785a+_0x51785a+0x2;if(_0x1bbf90[_0x5b3f0f(0x1ee)]<_0x25d6b6+0x3)return;let _0x12d7cb=[];for(let _0x55f33e=0x0;_0x55f33e<_0x35b336;_0x55f33e++)_0x12d7cb['push'](this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x20b8c2+_0x55f33e]));let _0x5a77a9=[];for(let _0xaeea64=0x0;_0xaeea64<_0x51785a;_0xaeea64++)_0x5a77a9[_0x5b3f0f(0x16a)](this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x3e8a21+_0xaeea64])||0x1);let _0x5508df=[],_0x4635b3=_0x3e8a21+_0x51785a,_0x124122=_0x4635b3+_0x51785a*0x3;if(_0x1bbf90[_0x5b3f0f(0x1ee)]>=_0x124122+0x5){for(let _0x513b6c=0x0;_0x513b6c<_0x51785a;_0x513b6c++){let _0x890ac3=_0x4635b3+_0x513b6c*0x3,_0x3a0d29=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x890ac3]),_0x5eecf5=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x890ac3+0x1]),_0x5ea9b9=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x890ac3+0x2]);_0x5508df[_0x5b3f0f(0x16a)]([_0x3a0d29,_0x5eecf5,_0x5ea9b9]);}let _0x9dec88=_0x124122,_0x4dd240=_0x9dec88+0x2,_0xb4b781=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x9dec88]),_0x28fd42=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x9dec88+0x1])||0x1,_0x14b48f=[this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x4dd240]),this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x4dd240+0x1]),this['_parseIgesNumber'](_0x1bbf90[_0x4dd240+0x2])],_0x28c84d={'type':_0x5b3f0f(0x1f5),'degree':_0x33a77b,'controlPoints':_0x5508df,'weights':_0x5a77a9,'knots':_0x12d7cb,'parameterRange':[_0xb4b781,_0x28fd42],'properties':{'planar':_0x272d9f===0x1,'closed':_0x51617f===0x1,'rational':_0x385a1a===0x1,'periodic':_0x168fc6===0x1},'normalVector':_0x14b48f,'numControlPoints':_0x51785a,'numKnots':_0x35b336,'upperControlPointIndex':_0x3c35ae};_0x1ac135[_0x5b3f0f(0x16a)](_0x28c84d);}else{let _0x5b8acf=_0x3e8a21+_0x51785a,_0x322860=_0x5b8acf+_0x51785a,_0x3feeb5=_0x322860+_0x51785a,_0x585f44=_0x3feeb5+_0x51785a,_0x595bbc=_0x585f44+0x2;if(_0x1bbf90[_0x5b3f0f(0x1ee)]<_0x595bbc+0x3)return;for(let _0x366f74=0x0;_0x366f74<_0x51785a;_0x366f74++){let _0x1b7576=this['_parseIgesNumber'](_0x1bbf90[_0x5b8acf+_0x366f74]),_0x1ae833=this['_parseIgesNumber'](_0x1bbf90[_0x322860+_0x366f74]),_0x1d4ab4=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x3feeb5+_0x366f74]);_0x5508df[_0x5b3f0f(0x16a)]([_0x1b7576,_0x1ae833,_0x1d4ab4]);}let _0x243d43=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x585f44]),_0x410811=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x585f44+0x1])||0x1,_0x49edeb=[this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x595bbc]),this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x595bbc+0x1]),this['_parseIgesNumber'](_0x1bbf90[_0x595bbc+0x2])],_0x43c183={'type':_0x5b3f0f(0x1f5),'degree':_0x33a77b,'controlPoints':_0x5508df,'weights':_0x5a77a9,'knots':_0x12d7cb,'parameterRange':[_0x243d43,_0x410811],'properties':{'planar':_0x272d9f===0x1,'closed':_0x51617f===0x1,'rational':_0x385a1a===0x1,'periodic':_0x168fc6===0x1},'normalVector':_0x49edeb,'numControlPoints':_0x51785a,'numKnots':_0x35b336,'upperControlPointIndex':_0x3c35ae};_0x1ac135[_0x5b3f0f(0x16a)](_0x43c183);}},'_processNurbsSurfaceEntity':function(_0x3845a2,_0x43148a){const _0x162911=a0_0x772e08;if(_0x3845a2['length']<0xa)return;let _0x157903=parseInt(_0x3845a2[0x1]),_0xa39470=parseInt(_0x3845a2[0x2]),_0x53adbc=parseInt(_0x3845a2[0x3]),_0x48abde=parseInt(_0x3845a2[0x4]),_0x20d4c0=parseInt(_0x3845a2[0x5]),_0x485b8e=parseInt(_0x3845a2[0x6]),_0x2bc77d=parseInt(_0x3845a2[0x7]),_0xf33beb=parseInt(_0x3845a2[0x8]),_0x5f3710=parseInt(_0x3845a2[0x9]),_0xf7a682=_0x157903+0x1,_0x40a288=_0xa39470+0x1,_0x339281=_0x157903+_0x53adbc+0x2,_0x54f4a9=_0xa39470+_0x48abde+0x2,_0x1b0b0c=0xa,_0x5d3278=[];for(let _0x3995f9=0x0;_0x3995f9<_0x339281;_0x3995f9++)_0x5d3278[_0x162911(0x16a)](this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]));let _0x211eb4=[];for(let _0x124f36=0x0;_0x124f36<_0x54f4a9;_0x124f36++)_0x211eb4[_0x162911(0x16a)](this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]));let _0x15923a={'type':'nurbsSurface','degreeU':_0x53adbc,'degreeV':_0x48abde,'controlPoints':[],'weights':[],'knotsU':_0x5d3278,'knotsV':_0x211eb4,'properties':{'closedU':_0x20d4c0===0x1,'closedV':_0x485b8e===0x1,'rational':_0x2bc77d===0x1,'periodicU':_0xf33beb===0x1,'periodicV':_0x5f3710===0x1}};for(let _0x5de454=0x0;_0x5de454<_0xf7a682;_0x5de454++)_0x15923a[_0x162911(0x1af)][_0x162911(0x16a)](new Array(_0x40a288)),_0x15923a[_0x162911(0x171)][_0x162911(0x16a)](new Array(_0x40a288));for(let _0x5e33ad=0x0;_0x5e33ad<_0x40a288;_0x5e33ad++)for(let _0x4d1959=0x0;_0x4d1959<_0xf7a682;_0x4d1959++)_0x15923a[_0x162911(0x1af)][_0x4d1959][_0x5e33ad]=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++])||0x1;for(let _0x52d932=0x0;_0x52d932<_0x40a288;_0x52d932++)for(let _0xf93a27=0x0;_0xf93a27<_0xf7a682;_0xf93a27++){let _0x418be1=this['_parseIgesNumber'](_0x3845a2[_0x1b0b0c++]),_0x5e9df0=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]),_0x43e00e=this['_parseIgesNumber'](_0x3845a2[_0x1b0b0c++]);_0x15923a[_0x162911(0x171)][_0xf93a27][_0x52d932]=[_0x418be1,_0x5e9df0,_0x43e00e];}if(_0x1b0b0c+0x4<=_0x3845a2['length']){let _0x314bbb=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]),_0xd34a2d=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]),_0x524764=this['_parseIgesNumber'](_0x3845a2[_0x1b0b0c++]),_0x57e90c=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]);_0x15923a[_0x162911(0x1d6)]=[_0x314bbb,_0xd34a2d],_0x15923a[_0x162911(0x160)]=[_0x524764,_0x57e90c];}_0x43148a[_0x162911(0x16a)](_0x15923a);},'igesToGeometry':function(_0x40b748){const _0x1f8b6b=a0_0x772e08;if(!_0x40b748||typeof _0x40b748!=_0x1f8b6b(0x155))throw new Error('IGES\x20content\x20must\x20be\x20a\x20non-empty\x20string');let _0x47421f=[],_0x52d1ea=[],_0x520b72=[],_0x3237ad=[],_0x2fc0ff=_0x40b748[_0x1f8b6b(0x163)]('\x0a')[_0x1f8b6b(0x189)](_0xfefac6=>_0xfefac6[_0x1f8b6b(0x199)]()&&_0xfefac6[_0x1f8b6b(0x1be)](0x48)==='P'),_0x2b0fc4='';for(let _0x198c39 of _0x2fc0ff){let _0x407e39=_0x198c39[_0x1f8b6b(0x1ef)](0x0,0x40)[_0x1f8b6b(0x199)]();_0x2b0fc4+=_0x407e39,_0x407e39['endsWith'](';')&&(this[_0x1f8b6b(0x1ab)](_0x2b0fc4,_0x47421f,_0x52d1ea,_0x520b72,_0x3237ad),_0x2b0fc4='');}return{'lines':_0x47421f,'points':_0x52d1ea,'nurbsCurves':_0x520b72,'nurbsSurfaces':_0x3237ad};}},G={'polylinePlaneIntersections3D':function(_0x4fed81,_0x4806f6){const _0x29e710=a0_0x772e08;let _0x46e9bd=[];for(let _0x505be2=0x0;_0x505be2<_0x4fed81[_0x29e710(0x1ee)]-0x1;_0x505be2++){let _0x3b7dee=_0x4fed81[_0x505be2],_0x32f4f1=_0x4fed81[_0x505be2+0x1],_0x2b024a=[_0x32f4f1[0x0]-_0x3b7dee[0x0],_0x32f4f1[0x1]-_0x3b7dee[0x1],_0x32f4f1[0x2]-_0x3b7dee[0x2]],_0x2f0a2a={'origin':_0x3b7dee,'dir':_0x2b024a},_0x33e8a9=this[_0x29e710(0x16e)](_0x2f0a2a,_0x4806f6);if(_0x33e8a9){let _0x4ce6a6=_0x2b024a[0x0]!==0x0?(_0x33e8a9[0x0]-_0x3b7dee[0x0])/_0x2b024a[0x0]:_0x2b024a[0x1]!==0x0?(_0x33e8a9[0x1]-_0x3b7dee[0x1])/_0x2b024a[0x1]:_0x2b024a[0x2]!==0x0?(_0x33e8a9[0x2]-_0x3b7dee[0x2])/_0x2b024a[0x2]:0x0;_0x4ce6a6>=0x0&&_0x4ce6a6<=0x1&&(_0x46e9bd[_0x29e710(0x17b)](_0x5e4cb6=>{const _0x7dcd55=_0x29e710;let _0x219b74=_0x5e4cb6[0x0]-_0x33e8a9[0x0],_0x47e490=_0x5e4cb6[0x1]-_0x33e8a9[0x1],_0x2a8ab1=_0x5e4cb6[0x2]-_0x33e8a9[0x2];return Math[_0x7dcd55(0x1dc)](_0x219b74*_0x219b74+_0x47e490*_0x47e490+_0x2a8ab1*_0x2a8ab1)<1e-10;})||_0x46e9bd[_0x29e710(0x16a)](_0x33e8a9));}}return _0x46e9bd;},'rayPlaneIntersection3D':function(_0x56e7f1,_0x1f9fbb){const _0x155dcc=a0_0x772e08;let _0x33fcc3=_0x56e7f1['origin'],_0x19329d=_0x56e7f1['dir'],_0x2f7862=_0x1f9fbb[_0x155dcc(0x1ca)],_0x259b76=_0x1f9fbb['normal'],_0x7e2446=_0x19329d[0x0]*_0x259b76[0x0]+_0x19329d[0x1]*_0x259b76[0x1]+_0x19329d[0x2]*_0x259b76[0x2];if(Math[_0x155dcc(0x1c9)](_0x7e2446)<1e-10)return null;let _0x7cb561=((_0x2f7862[0x0]-_0x33fcc3[0x0])*_0x259b76[0x0]+(_0x2f7862[0x1]-_0x33fcc3[0x1])*_0x259b76[0x1]+(_0x2f7862[0x2]-_0x33fcc3[0x2])*_0x259b76[0x2])/_0x7e2446;return _0x7cb561<0x0?null:[_0x33fcc3[0x0]+_0x7cb561*_0x19329d[0x0],_0x33fcc3[0x1]+_0x7cb561*_0x19329d[0x1],_0x33fcc3[0x2]+_0x7cb561*_0x19329d[0x2]];},'polylineIntersections3D':function(_0x5754e6,_0x1173cb,_0x5c4ba5=0.000001){const _0x20251e=a0_0x772e08;function _0x4a6f32(_0x2eadbb,_0x29638c,_0x4bd014,_0x5b619c){const _0xc8562b=a0_0x57f9;let _0x3efb33=[_0x29638c[0x0]-_0x2eadbb[0x0],_0x29638c[0x1]-_0x2eadbb[0x1],_0x29638c[0x2]-_0x2eadbb[0x2]],_0x2b7266=[_0x5b619c[0x0]-_0x4bd014[0x0],_0x5b619c[0x1]-_0x4bd014[0x1],_0x5b619c[0x2]-_0x4bd014[0x2]],_0x1b4d3e=[_0x2eadbb[0x0]-_0x4bd014[0x0],_0x2eadbb[0x1]-_0x4bd014[0x1],_0x2eadbb[0x2]-_0x4bd014[0x2]],_0x2ef7c0=_0x23a158(_0x3efb33,_0x3efb33),_0x42010f=_0x23a158(_0x3efb33,_0x2b7266),_0x52e2b2=_0x23a158(_0x2b7266,_0x2b7266),_0x22b91c=_0x23a158(_0x3efb33,_0x1b4d3e),_0x1aa340=_0x23a158(_0x2b7266,_0x1b4d3e),_0x20c17c=_0x2ef7c0*_0x52e2b2-_0x42010f*_0x42010f,_0x16c8d4,_0x514d42;_0x20c17c===0x0?(_0x16c8d4=0x0,_0x514d42=_0x42010f>_0x52e2b2?_0x22b91c/_0x42010f:_0x1aa340/_0x52e2b2):(_0x16c8d4=(_0x42010f*_0x1aa340-_0x52e2b2*_0x22b91c)/_0x20c17c,_0x514d42=(_0x2ef7c0*_0x1aa340-_0x42010f*_0x22b91c)/_0x20c17c),_0x16c8d4=Math[_0xc8562b(0x1f1)](0x0,Math[_0xc8562b(0x19d)](0x1,_0x16c8d4)),_0x514d42=Math[_0xc8562b(0x1f1)](0x0,Math[_0xc8562b(0x19d)](0x1,_0x514d42));let _0x2a8daf=[_0x2eadbb[0x0]+_0x16c8d4*_0x3efb33[0x0],_0x2eadbb[0x1]+_0x16c8d4*_0x3efb33[0x1],_0x2eadbb[0x2]+_0x16c8d4*_0x3efb33[0x2]],_0x55f0c1=[_0x4bd014[0x0]+_0x514d42*_0x2b7266[0x0],_0x4bd014[0x1]+_0x514d42*_0x2b7266[0x1],_0x4bd014[0x2]+_0x514d42*_0x2b7266[0x2]];return{'pt1':_0x2a8daf,'pt2':_0x55f0c1,'distance':Math['sqrt']((_0x2a8daf[0x0]-_0x55f0c1[0x0])**0x2+(_0x2a8daf[0x1]-_0x55f0c1[0x1])**0x2+(_0x2a8daf[0x2]-_0x55f0c1[0x2])**0x2)};}function _0x23a158(_0x40beb7,_0x4600f2){return _0x40beb7[0x0]*_0x4600f2[0x0]+_0x40beb7[0x1]*_0x4600f2[0x1]+_0x40beb7[0x2]*_0x4600f2[0x2];}let _0xf5e17e=[];for(let _0x2b1c4d=0x0;_0x2b1c4d<_0x5754e6[_0x20251e(0x1ee)]-0x1;_0x2b1c4d++)for(let _0xb13a02=0x0;_0xb13a02<_0x1173cb[_0x20251e(0x1ee)]-0x1;_0xb13a02++){let {pt1:_0x1b4fb5,pt2:_0x59b7dd,distance:_0x514775}=_0x4a6f32(_0x5754e6[_0x2b1c4d],_0x5754e6[_0x2b1c4d+0x1],_0x1173cb[_0xb13a02],_0x1173cb[_0xb13a02+0x1]);_0x514775<_0x5c4ba5&&_0xf5e17e[_0x20251e(0x16a)]({'point':[(_0x1b4fb5[0x0]+_0x59b7dd[0x0])/0x2,(_0x1b4fb5[0x1]+_0x59b7dd[0x1])/0x2,(_0x1b4fb5[0x2]+_0x59b7dd[0x2])/0x2],'seg1':_0x2b1c4d,'seg2':_0xb13a02,'distance':_0x514775});}return _0xf5e17e;}},B={'projectTo2d':function(_0x2ff4c0){const _0x79e8f0=a0_0x772e08;let _0x31d08e=[..._0x2ff4c0];if(_0x31d08e[_0x79e8f0(0x1ee)]<0x3)throw new Error(_0x79e8f0(0x1a0));let {normal:_0xabfd40,point:_0x54004b}=this[_0x79e8f0(0x1a3)](_0x31d08e),_0x4ce634=1e-10,_0x1c88f3=null;for(let _0x56d90a=0x1;_0x56d90a<_0x31d08e[_0x79e8f0(0x1ee)];_0x56d90a++){let _0x11881a=w[_0x79e8f0(0x1eb)](_0x54004b,_0x31d08e[_0x56d90a]);if(w[_0x79e8f0(0x1ee)](_0x11881a)>_0x4ce634){_0x1c88f3=_0x11881a;break;}}let _0x274360=w[_0x79e8f0(0x19b)](_0x1c88f3),_0x3b768f=w[_0x79e8f0(0x1cd)](_0xabfd40,_0x274360),_0x24a64a=w[_0x79e8f0(0x19b)](_0x3b768f);return _0x31d08e[_0x79e8f0(0x1c7)](_0x28f405=>{const _0x3fb82a=_0x79e8f0;let _0x44d33e=w[_0x3fb82a(0x1eb)](_0x54004b,_0x28f405);return[w[_0x3fb82a(0x1d0)](_0x44d33e,_0x274360),w[_0x3fb82a(0x1d0)](_0x44d33e,_0x24a64a)];});},'projectedAreas':function(_0x4e03aa){const _0x40a588=a0_0x772e08;let _0x24f2ab=[..._0x4e03aa];if(_0x24f2ab['length']<0x3)throw new Error(_0x40a588(0x1a0));let _0x26c6fd=_0x24f2ab[_0x40a588(0x1ee)],_0x1e6349=0x0;for(let _0x5a4697=0x0;_0x5a4697<_0x26c6fd;_0x5a4697++){let [_0x527a12,_0x1d707f]=_0x24f2ab[_0x5a4697],[_0x20970e,_0x5abb76]=_0x24f2ab[(_0x5a4697+0x1)%_0x26c6fd];_0x1e6349+=_0x527a12*_0x5abb76-_0x20970e*_0x1d707f;}_0x1e6349=Math[_0x40a588(0x1c9)](_0x1e6349)*0.5;let _0x34adef=0x0;for(let _0x188bfd=0x0;_0x188bfd<_0x26c6fd;_0x188bfd++){let [_0x391282,,_0x44f92d]=_0x24f2ab[_0x188bfd],[_0x202b8a,,_0x440c9f]=_0x24f2ab[(_0x188bfd+0x1)%_0x26c6fd];_0x34adef+=_0x391282*_0x440c9f-_0x202b8a*_0x44f92d;}_0x34adef=Math['abs'](_0x34adef)*0.5;let _0x1d6aaa=0x0;for(let _0xfadcb1=0x0;_0xfadcb1<_0x26c6fd;_0xfadcb1++){let [,_0xc0085,_0x2e01f7]=_0x24f2ab[_0xfadcb1],[,_0x36ff65,_0x2f5c54]=_0x24f2ab[(_0xfadcb1+0x1)%_0x26c6fd];_0x1d6aaa+=_0xc0085*_0x2f5c54-_0x36ff65*_0x2e01f7;}return _0x1d6aaa=Math[_0x40a588(0x1c9)](_0x1d6aaa)*0.5,{'xy':_0x1e6349,'xz':_0x34adef,'yz':_0x1d6aaa};},'plane':function(_0xd4654b){const _0x4d2756=a0_0x772e08;let _0x1dff6f=[..._0xd4654b];if(_0x1dff6f[_0x4d2756(0x1ee)]<0x3)throw new Error(_0x4d2756(0x151));let _0x5f35d4=1e-10,_0x4b2cdf=_0x1dff6f[0x0],_0x242e04=null,_0xff7228=-0x1;for(let _0x40fdbd=0x1;_0x40fdbd<_0x1dff6f['length'];_0x40fdbd++){let _0x125be9=w[_0x4d2756(0x1eb)](_0x4b2cdf,_0x1dff6f[_0x40fdbd]);if(w[_0x4d2756(0x1ee)](_0x125be9)>_0x5f35d4){_0x242e04=_0x125be9,_0xff7228=_0x40fdbd;break;}}if(!_0x242e04)throw new Error(_0x4d2756(0x1ae));let _0x47350f=null;for(let _0x5d8390=0x1;_0x5d8390<_0x1dff6f[_0x4d2756(0x1ee)];_0x5d8390++){if(_0x5d8390===_0xff7228)continue;let _0x5038bf=w[_0x4d2756(0x1eb)](_0x4b2cdf,_0x1dff6f[_0x5d8390]),_0x4adeff=w['cross'](_0x242e04,_0x5038bf);if(w[_0x4d2756(0x1ee)](_0x4adeff)>_0x5f35d4){_0x47350f=w[_0x4d2756(0x19b)](_0x4adeff);break;}}if(!_0x47350f)throw new Error('Degenerate\x20polygon:\x20all\x20points\x20are\x20collinear');let [_0x220edc,_0x4e9385,_0x4c0554]=_0x47350f,_0x2cbfd9=-(_0x220edc*_0x4b2cdf[0x0]+_0x4e9385*_0x4b2cdf[0x1]+_0x4c0554*_0x4b2cdf[0x2]);return{'a':_0x220edc,'b':_0x4e9385,'c':_0x4c0554,'d':_0x2cbfd9,'normal':_0x47350f,'point':_0x4b2cdf};}};if(new Date()[a0_0x772e08(0x1d5)]()>0x7ea)throw new Error('');export{O as Bspline3d,K as Cspline3d,H as Iges,G as Intersection3d,$ as Matrix,k as Nurbs3d,U as Point3d,B as Polygon3d,A as Polyline3D,L as Utils,w as Vector3d};function a0_0x2e26(){const _0x21d009=['normalized','totalLength','min','_resample_to_uniform_arc_length','solveLinearSystem','Need\x20at\x20least\x203\x20points\x20for\x20a\x20polygon','create_arc','Control\x20points\x202D\x20array\x20is\x20required','plane','_uniform_parameterization','toUpperCase','geometry.iges','nurbsSurface','slice','bad\x20knot\x20vector\x20length','segmentLengths','_processEntity','isArray','toString','Degenerate\x20polygon:\x20all\x20points\x20are\x20coincident','weights','degree\x20must\x20be\x20at\x20least\x201\x20(linear)','lastIndexOf','Invalid\x20knot\x20vector\x20length:\x20expected\x20','getNaturalKs','E$1','type','401009nJjDvE','_basis_function','_processLineEntity','1.0','replace','toExponential','vectorMultiplyTranspose','cos','charAt','cumulativeLength','padStart','_formatTerminateSection','knots','multiplyTranspose','_parseIgesNumber','out\x20of\x20bounds','Auto-generation\x20of\x20knot\x20vectors\x20not\x20fully\x20implemented.\x20Please\x20provide\x20knotsU\x20and\x20knotsV.','map','_generateGlobalSection','abs','point','26604FBtTMP','Invalid\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','cross','findParameterAtPoint','uniform','dot','_processNurbsCurveEntity','js3d','parameterEntry','move','getFullYear','parameterRangeU','forEach','_toHollerith','309305zBcoXs','linspace','warn','sqrt','knotsV','resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201','Skipping\x20NURBS\x20curve:\x20need\x20at\x20least\x20','Need\x20at\x20least\x202\x20points\x20to\x20approximate','degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201','Skipping\x20NURBS\x20surface:\x20insufficient\x20control\x20points','964920iAGmaq',',0,0,1,0,0','1526416SEyqUI','bspline','_processNurbsSurfaceEntity','pow','_formatSection','sub','fromTwoPoints','lineCount','polyline','length','substring','join','max','308','insert_knot','670240uTQxlO','nurbsCurve','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','data','Need\x20at\x20least\x203\x20points\x20to\x20define\x20a\x20plane',',\x20got\x20','POSITIVE_INFINITY','findPointAtParameter','string','_uniform_knot_vector','padEnd','T\x20\x20\x20\x20\x20\x201\x0a','Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length','Unknown\x20geometry\x20type:\x20','knotsU','fill','sin','organization','No\x20valid\x20geometries\x20found\x20to\x20convert','parameterRangeV','1H,','object','split',',0.0,0.0,0.0','normalizedCosineSpacing','scalarProduct','nurbs_surface.iges','uniform_knot_spacing','degreeU','push','Invalid\x20geometry\x20object.\x20Expected\x20{\x20type:\x20\x22points|polyline|nurbsCurve|nurbsSurface\x22,\x20data:\x20[...]\x20}','round','log','rayPlaneIntersection3D','_approximate_knot_vector','.\x20Supported\x20types:\x20points,\x20polyline,\x20nurbsCurve,\x20nurbsSurface','controlPoints','nurbs','106,','Knots\x20U\x20and\x20V\x20are\x20required\x20for\x20NURBS\x20surface','START','_gaussJ','toFixed','centripetal','_centripetal_parameterization','from','some',',0,0,1,0','7ACxMCJ','degreeV','580218hwHyVi','ceil','128,','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','directoryEntry','filename','0.01','substr','_processPointEntity','3XvNORY','filter','1810Yjdpjc','floor','author','zerosMat','1000.0','0.0001','_formatNumber','chordLength','LiftLab','_chord_length_parameterization','_formatDirectoryLine','points','_createPolylineEntity','_createNurbsSurfaceEntity','126,','trim','_formatParameterLine'];a0_0x2e26=function(){return _0x21d009;};return a0_0x2e26();}
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.18.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",