UNPKG

@typecad/typecad

Version:

🤖programmatically 💥create 🛰️hardware

1 lines 143 kB
(function(_0x4140aa,_0x20f92e){const a9_0x1abf2d={_0x37b9c2:0xd2,_0x16c193:0x2d,_0x5dbc4c:0x6c,_0x4656b4:0x28,_0x265718:0x3,_0x4ae9be:0xe,_0x2b5199:0x6d,_0x42eaca:0xd0,_0x3dff9a:0x4c,_0x536b3b:0xcf,_0x6c99c7:0x88,_0x429e1a:0x2,_0x4da28e:0xbc,_0x1fdc8f:0xf1},a9_0x18b776={_0x5c3847:0xf0},_0x349ece=_0x4140aa();function _0x79a249(_0x175f9c,_0x33a2dd){return a9_0xfc77(_0x33a2dd- -a9_0x18b776._0x5c3847,_0x175f9c);}while(!![]){try{const _0x100351=-parseInt(_0x79a249(a9_0x1abf2d._0x37b9c2,a9_0x1abf2d._0x16c193))/(-0xb*0x15+0x22+0xc6)*(-parseInt(_0x79a249(-a9_0x1abf2d._0x5dbc4c,-a9_0x1abf2d._0x4656b4))/(-0xb3f*0x2+0x13*0xca+0x782*0x1))+parseInt(_0x79a249(-a9_0x1abf2d._0x265718,-0x45))/(-0x1b8*-0x13+0x666+-0x1*0x270b)*(-parseInt(_0x79a249(0x113,0xcb))/(0xcaf+0xe98*0x2+-0x29db))+parseInt(_0x79a249(a9_0x1abf2d._0x4ae9be,a9_0x1abf2d._0x2b5199))/(0x1*0xb51+-0xc86+0x13a)+-parseInt(_0x79a249(a9_0x1abf2d._0x42eaca,0x33))/(-0x5*-0xeb+0x49*-0x1e+0x3fd)*(parseInt(_0x79a249(a9_0x1abf2d._0x3dff9a,a9_0x1abf2d._0x536b3b))/(-0x1c74+0x1b64+-0x1*-0x117))+-parseInt(_0x79a249(-a9_0x1abf2d._0x6c99c7,a9_0x1abf2d._0x429e1a))/(0x1292+0x214a+-0x33d4)+parseInt(_0x79a249(-0xc,0x10))/(-0x12f9*0x1+0x1169+0x199*0x1)*(-parseInt(_0x79a249(0x112,0xf3))/(-0x12e*-0x7+-0xf2b+-0x3*-0x251))+parseInt(_0x79a249(a9_0x1abf2d._0x4da28e,a9_0x1abf2d._0x1fdc8f))/(-0x5b*-0x5b+-0x108f+-0x1d*0x8b)*(parseInt(_0x79a249(-0x63,0x44))/(0xf4a+-0x1*-0x3b3+-0x175*0xd));if(_0x100351===_0x20f92e)break;else _0x349ece['push'](_0x349ece['shift']());}catch(_0x39f967){_0x349ece['push'](_0x349ece['shift']());}}}(a9_0x856e,-0x9*-0x26ba6+-0xde7eb+-0x1*-0x4eb9f));var __classPrivateFieldSet=this&&this['__classPri'+a9_0x310250(0x1c1,0x171)+'et']||function(_0x28bffd,_0x57d378,_0x320e93,_0x4438cd,_0x326473){const a9_0xd7582c={_0x5dcf74:0x87,_0x409236:0x84,_0x6a336b:0x48,_0x304a3a:0xa,_0xf2485b:0x1a,_0x30f8a7:0x197,_0x56dd0b:0x62,_0x46d11b:0x148,_0x1f9beb:0x4,_0x3503d3:0x10a},_0xfe47e5={};_0xfe47e5[_0x252301(0xe9,a9_0xd7582c._0x5dcf74)]='Cannot\x20wri'+'te\x20private'+'\x20member\x20to'+'\x20an\x20object'+'\x20whose\x20cla'+_0x252301(0xc,a9_0xd7582c._0x409236)+'\x20declare\x20i'+'t',_0xfe47e5['tEuLQ']=function(_0x3676bc,_0x681929){return _0x3676bc===_0x681929;};const _0x40173b=_0xfe47e5;if(_0x4438cd==='m')throw new TypeError(_0x252301(a9_0xd7582c._0x6a336b,a9_0xd7582c._0x304a3a)+_0x252301(a9_0xd7582c._0xf2485b,0xd9)+_0x252301(a9_0xd7582c._0x30f8a7,0x136));if(_0x4438cd==='a'&&!_0x326473)throw new TypeError(_0x252301(-a9_0xd7582c._0x56dd0b,-0x14)+_0x252301(0xa2,a9_0xd7582c._0x46d11b)+'\x20defined\x20w'+'ithout\x20a\x20s'+'etter');if(typeof _0x57d378===_0x252301(0x6b,0x86)?_0x28bffd!==_0x57d378||!_0x326473:!_0x57d378['has'](_0x28bffd))throw new TypeError(_0x40173b['lBvCs']);function _0x252301(_0x4a4f7a,_0x3e93f0){return a9_0x310250(_0x4a4f7a,_0x3e93f0- -0x160);}return _0x40173b['tEuLQ'](_0x4438cd,'a')?_0x326473['call'](_0x28bffd,_0x320e93):_0x326473?_0x326473[_0x252301(a9_0xd7582c._0x1f9beb,0x7)]=_0x320e93:_0x57d378[_0x252301(a9_0xd7582c._0x3503d3,0x5c)](_0x28bffd,_0x320e93),_0x320e93;},__classPrivateFieldGet=this&&this['__classPri'+'vateFieldG'+'et']||function(_0x5dac0c,_0x1e6dcc,_0x337236,_0x22c24a){const a9_0x1f3b31={_0x450b5a:0x281,_0x14a13:0x30f,_0x3fbae2:0x2a2,_0x4b8a99:0x244,_0x5f17a2:0x35a,_0x2f597a:0x352,_0x24bd29:0x41a},_0x1f6ae3={};_0x1f6ae3['EGzQp']=function(_0x327764,_0x481528){return _0x327764===_0x481528;};function _0x95ad12(_0x5331a4,_0x566057){return a9_0x310250(_0x566057,_0x5331a4-0x135);}const _0xd0277=_0x1f6ae3;if(_0xd0277[_0x95ad12(0x301,0x2a6)](_0x337236,'a')&&!_0x22c24a)throw new TypeError(_0x95ad12(a9_0x1f3b31._0x450b5a,a9_0x1f3b31._0x14a13)+'cessor\x20was'+'\x20defined\x20w'+_0x95ad12(a9_0x1f3b31._0x3fbae2,a9_0x1f3b31._0x4b8a99)+_0x95ad12(a9_0x1f3b31._0x5f17a2,a9_0x1f3b31._0x2f597a));if(typeof _0x1e6dcc==='function'?_0x5dac0c!==_0x1e6dcc||!_0x22c24a:!_0x1e6dcc['has'](_0x5dac0c))throw new TypeError('Cannot\x20rea'+'d\x20private\x20'+'member\x20fro'+'m\x20an\x20objec'+'t\x20whose\x20cl'+_0x95ad12(0x2d6,0x241)+'t\x20declare\x20'+'it');return _0xd0277[_0x95ad12(0x301,0x2ad)](_0x337236,'m')?_0x22c24a:_0x337236==='a'?_0x22c24a[_0x95ad12(0x3bc,a9_0x1f3b31._0x24bd29)](_0x5dac0c):_0x22c24a?_0x22c24a['value']:_0x1e6dcc['get'](_0x5dac0c);},_PCB_instances,_PCB_pcb,_PCB_components,_PCB_stagedComponents,_PCB_groups,_PCB_outlines,_PCB_stagedOutlines,_PCB_options,_PCB_existingBoardElements,_PCB_grTexts,_PCB_zones,_PCB_keepoutZones,_PCB_grLines,_PCB_grCircles,_PCB_grRects,_PCB_grPolys,_PCB_routerRegistry,_PCB_loadExistingBoardElements,_PCB_resolveNet,_PCB_addComponentToBoard,_PCB_stageComponent,_PCB_unstageComponent,_PCB__update_footprint_node,_PCB__create_footprint_node;import{Component}from'../component';import{Schematic}from'../schematic';import a9_0x589136 from'node:fs';import a9_0x2d8bf6 from'fast-sexpr';import a9_0x2472a7 from's-expression.js';function a9_0xfc77(_0x36742e,_0x7728e0){const _0x46a319=a9_0x856e();return a9_0xfc77=function(_0x47b36a,_0x4471b7){_0x47b36a=_0x47b36a-(0x98f+0x216b+-0x2a51);let _0x212f4f=_0x46a319[_0x47b36a];if(a9_0xfc77['tIFSiW']===undefined){var _0xe09716=function(_0x373f40){const _0x416f01='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x44587f='',_0x195dad='';for(let _0x428a25=0x13*-0xad+-0x6e8*-0x2+0x1*-0xf9,_0x4236fa,_0x28fce6,_0xfa2cd1=0x9*0x142+-0x11*0x24b+0x1*0x1ba9;_0x28fce6=_0x373f40['charAt'](_0xfa2cd1++);~_0x28fce6&&(_0x4236fa=_0x428a25%(0x1*0x1853+-0x2b*-0x44+0x1*-0x23bb)?_0x4236fa*(-0x10ee+-0x3*-0xc2a+-0x8*0x26a)+_0x28fce6:_0x28fce6,_0x428a25++%(-0x151d+-0x2*-0x189+0xc9*0x17))?_0x44587f+=String['fromCharCode'](0x174+-0x1faf+0x1f3a&_0x4236fa>>(-(-0x143f*-0x1+0x2343+-0x3780)*_0x428a25&0x4*-0x5ec+0x10bb+-0x1*-0x6fb)):0x3*-0x58a+0x22c3*0x1+0x5*-0x3a1){_0x28fce6=_0x416f01['indexOf'](_0x28fce6);}for(let _0x300ca1=-0x185e+0x2287*-0x1+0x1*0x3ae5,_0x277d13=_0x44587f['length'];_0x300ca1<_0x277d13;_0x300ca1++){_0x195dad+='%'+('00'+_0x44587f['charCodeAt'](_0x300ca1)['toString'](0x1593+0x2572+-0x3af5))['slice'](-(-0x2*-0x1365+-0x1*0x1209+-0x14bf));}return decodeURIComponent(_0x195dad);};a9_0xfc77['beNCtN']=_0xe09716,_0x36742e=arguments,a9_0xfc77['tIFSiW']=!![];}const _0x411e1e=_0x46a319[0x1f7c+-0x1391+-0xbeb],_0x2171c0=_0x47b36a+_0x411e1e,_0x349ae2=_0x36742e[_0x2171c0];return!_0x349ae2?(_0x212f4f=a9_0xfc77['beNCtN'](_0x212f4f),_0x36742e[_0x2171c0]=_0x212f4f):_0x212f4f=_0x349ae2,_0x212f4f;},a9_0xfc77(_0x36742e,_0x7728e0);}import{TrackBuilder}from'./pcb_track_builder';import{PadResolver}from'../routing/shared/pad_resolver';import{formatSourceInfoForProperty,generateUuid}from'./pcb_utils';import{mapLayerToSide,transformSexprLayers,mirrorChamferDirection}from'./pcb_layer_utils';import{pcbLine,pcbCircle,pcbRect,pcbPoly,pcbOutline}from'./pcb_graphics';import{zone,keepout,_getStagedOutlines,_removeStagedOutlinesByUuid}from'./pcb_zones';import{calculateViaCurrentCapacity,calculateMinTraceWidth,calculateBoardBounds}from'./pcb_routing_calculations';import{pinToIdentifier,pinsMatch,connectionMatches}from'./pcb_routing_helpers';function a9_0x310250(_0x4ca91d,_0x2c2333){const a9_0x28900c={_0x383fd2:0x8f};return a9_0xfc77(_0x2c2333-a9_0x28900c._0x383fd2,_0x4ca91d);}import{prettyPrintSExpr,pointOnLineSegment,routeNet as a9_0x1f0453}from'./pcb_routing_core';import{createBoard}from'./pcb_board_creation';import{autoroute}from'./pcb_autoroute';export{TrackBuilder}from'./pcb_track_builder';const S=new a9_0x2472a7();function a9_0x856e(){const _0x28ddf8=['wLDLA0y','C1L5uKi','q2LZC2i','BM9Kzv9TB2r1Ba','rhLKB0i','vfrvrLC','svfxugC','D2L0Acb0AgLZia','DgriDwu','Aw5LCW','xgrPC3rC','Bgf5zxi','BwXqB2e','z3jqB2X5CW','tenKAe0','mta5nZm1mJbpvunTrNi','q29cBNG','ye1qtMa','BvrQtvK','zKnnCLu','wNznuNG','x3bVAw50t25mAq','BMv0','nxWYmhWXm3W4Fa','ExLKtwG','s1z3C0K','wMPMrva','y3fqveu','vM5XALC','mtm5nuLqD2fHrq','B25Z','DhHuwwy','x3bLBMrPBMDbDq','AezNCNm','y3jLyxrL','B3H2A1a','CMv2zxjZzq','x3jLBw92zvn0yq','tLzJAM8','CMLUDa','wxLyuwi','EM9Uzq','yxv0B3jVDxrLqG','q3zdEe8','CgnIx3rYywnRxW','D2LKDgG','B2rLlIa','yxnZigrPzcbUBW','DxvPzcbG','rwLKtNy','ALbMExG','Aw5JBhvKzxm','BwvWDwC','z3jVDxbZ','Aw5KzxHpzG','CfvgA2q','zxHPC3rPBMDcBW','vwPWwfy','nZiYmZe4Bw1vt3ry','v1L6y1G','AMX4wMq','te5etu8','Be54vLK','Aw5JCMvHC2vjDa','nMDgsgjeAG','z3jdAxjJBgvZ','yhbHC3nPDMvG','mxWYFdb8nNWXoa','x3nLDfbJyG','A2v5CW','q1D1r0u','DxrLCW','uKzqve8','D2HvzKG','C2v0','y3jLyxrLuM91Da','Euztvge','zM9YrwfJAa','ChvZAa','lMTPy2fKx3bJyG','tKrkuLu','mJmZmZqWCM5gAKns','zM9UDa','s2fhzK4','zNbFDgv4Da','BwLK','CMvVCMrLCG','zgvZy3jPChrPBW','C1nHEK8','zNjVBNq','ruD6uxa','ycr7uKvgrvjftG','tuXuvxC','DMfSDwvgB290Ca','DfnfEhbY','zxroyw1L','yNLeAxn0yw5Jzq','CMvWBgfJzufSBa','iKyUrMfIiG','uKTJuuC','uw9rEMW','zKjnqxC','ANvZDgLMEq','Bwf4sxrLCMf0Aq','ANfftLC','yezVB3rWCMLUDa','y29TCg9Uzw50CW','yuPdENq','DhLWzq','vujnuw8','uencigLUC3rHBG','DxP5D2e','uhvIBgLJ','CMvJDa','C3mGzgLKig5VDa','qwTnww0','zNvUy3rPB24','Bej2q3m','DvzSBu4','z2vKt3v0BgLUzq','q3nczfq','zNbFBgLUzq','mJCWnta0mgX3thfQzq','t1H0wMW','yMfJAW','y2fSy3vSyxrLqG','tM9Kzxm','DhbYAw50tM9Kzq','yxzowum','C3rHz2vKq29TCa','zhjmtNm','C3rYB2TLv2LKDa','uxD6rhm','uKHrthq','A2vQtwC','C2nOzw1HDgLJtG','AefeAhy','ufH3DMO','zgDlz0K','mJn8mtj8mJr8mq','DLjZCg0','vwnosxi','wgHNuNO','DMLHq29ZDa','D1fIueG','DxvPza','CgXHy2u','teTSB3e','BMvtzwDTzw50','zMfI','ugfYC2vKigzVBW','uxbQu1O','iKyUq3uI','BMv0tMfTzq','z3jmAw5LCW','sNDPrvm','D29jDuS','C3rHCNrZv2L0Aa','C3rYAw5N','C3rLCLjVDxrLCG','CKL3C0C','wLvpCLG','x2nSzwfYt3v0Ba','DwjSAwm','s2H2vwi','twvQvvy','CMvHzezPBgvtEq','yxv0B3jVDxrL','z2v0','CxrsBxq','nxWYmq','y2TUzxnZ','CgvJywqUCMvNAq','C1jgBgG','DhbYAw50igLZia','teDOCxC','y2fSy3vSyxrLvG','BxbU','BK1HDgnOzxm','zxr0zxi','AuXdsem','yMPfreC','zNbFCMvJDa','l2rPC3qV','y2fSy3vSyxrLtq','CLjVDw5K','BKLmDNG','swHSB2m','CgfK','zxjJ','se5Zzxq','wMHOzhq','BgvUz3rO','BwLYCM9Y','B2rnyKS','CgvpB2y','z3jVDxbZqxnnyq','ExbqCKy','Aw5uCMfJzvDPza','DgHVzcbPCYbUBW','DvjSDem','zNbFCg9SEq','zwzMzwn0CW','zKfTzuK','CMvZB2X2zu5LDa','ugfdEMG','rNLLuvm','BwvZC2fNzq','z2v0rwXLBwvUDa','zxjHDgLVBNnqzq','uLbeBNe','A2vLCg91DfPVBG','DgzRqM4','zM9VDhbYAw50','y0vvzui','AgfUCW','mtjnuLHVu08','B2DurvC','yerHDgfZAgvLDa','x3rYywnR','mta0odqXmvDQBgXpvG','Cezhy2O','B3b0Aw9UCW','y2HHBwzLCG','BMfTzq','CM91BMrZ','ueXNAhu','CM90yxrPB24','zMrVDuW','B3b0Aw9U','t2H3uMC','EwvZ','AhLWB3q','t21ry1y','zw5K','zM91BMq','uKnZvK0','thjeAfu','C1vyqKC','DNr4sNK','BLv6rLq','tfP5sxa','CMvZDwX0CW','CMLK','D0zqEee','yenVzgvG','AgLKzq','DgHPy2TUzxnZ','EK1fEvu','B2jQzwn0','BeTHqKS','BMv0q29Kzq','DhjPBq','yxqG','mtm1m1nRu0H0Eq','zwXpqvC','nZaXmgXArM5esa','zhL2q2K','jYbPCYbUB3qGCG','CMLKq29UzMLNDq','vvD4weG','A2LJywrFCgnI','Bwf0y2G','yfjLzMvYzw5Jzq','vLzeC1O','CMvSyxHwAwfdBW','BMfTzwq','vvvcAKW','C3bSAwnL','CKLeAuK','zg5W','C2LKzq','qxPiwhu','z3juzxH0CW','n3WYmNWXmhWXFa','BNvTyMvY','C2HVDW','y2fSBa','Dg9YB3v0zxm','zwXLBwvUDhm','q3fJu3q','BYbJCMvHDguGzG','wfjxvMS','vgvMsee','C2L6zq','whjuAhC','CMvNAxn0zxjsBW','Cg9W','lI9IDwLSzc8','Dg9mB3DLCKnHCW','uuvgChy','iKiUq3uI','Dcb3CML0ywjSzq','xsbgywLSzwqGDa','yMLZAvm','s3nQDNG','r1fuvLC','we1bD0y','D0LRzKO','zMLUzeLUzgv4','zxHPC3rZu3LUyW','DwPPwMq','AMnIrey','v2vvz0K','v3rRqK0','mtL8nhW5Fdn8mq','Avb5rfu','Cxb0twe','BMXWuxe','zMLUza','y2vZC29YihDHCW','uM91DgLUzYbHBa','qI5dDq','vw5RBM93BG','ChjVCgvYDhK','DKn1yui','AvrgyLu','Dgv4Da','C29YDa','DhfzvhG','C3vIC3rYAw5N','AKr0y2G','CMvMzxjLBMnL','BfjNq0y','DLfsEKG','svzzy2m','r2PkAuK','zNbFDgv4Df9IBW','rvvor2S','ywjZ','B290ChjPBNqGBG','mte4nJe0owrgsNLqta','t3v0BgLUzxm','z2v0ugfKq2vUDa','r3zMCNK','shzmq0S','D1z1yKC','AwrZEuy','zw50CW','zNjVBq','Dwf6qKG','C3rHCNq','CgnI','DxrMoa','zM9UDfnPEMu','zKLyuMW','CMvWBgfJzq','AxrHBgLJ','AxnbCNjHEq','uhjPDMf0zsbHyW','r2npAMu','zxr6ChC','vg5ZquW','EfLOse4','BgLUzq','rKztwxy','B25G','tMPPzvm','vwXuC2G','BgTKu2q','mKrpCvHQDq','ChrZ','BM9Kzxm','Bwf4','sgjPCg0','z2j5wuq','uhvYs2m','y29UzMLNDxjLrW','Bgf5zxjZ','qLvqtMS','y0HSsgS','AKjovMu','zgf0yxnOzwv0','AMTQvva','q0v9ya','C0j5vxvPza','DMfSDwu','AgvPz2H0','EM5TDLq','uhjPDMf0zsbTzq','B3v0BgLUzq','u2nOzw1HDgLJ','AxrOB3v0igeGzW','DuDOBNy','r1Lnr0q','CgLUDhLWzq','DMf0zuzPzwXKuW'];a9_0x856e=function(){return _0x28ddf8;};return a9_0x856e();}function isSchematicNetDefinition(_0x97af18){const a9_0x2f8ba9={_0x2536f0:0x20e,_0x17575c:0x201,_0x2ca4aa:0x324,_0x1e04b9:0x315},a9_0x134c75={_0x4c55fe:0x460};function _0x4a414e(_0x22866e,_0x2a17fb){return a9_0x310250(_0x22866e,_0x2a17fb- -a9_0x134c75._0x4c55fe);}const _0x503460={'zqUmj':function(_0x4753ce,_0x28d2e2){return _0x4753ce(_0x28d2e2);},'NLshJ':function(_0x463a5b,_0x36a6b4){return _0x463a5b===_0x36a6b4;},'EJLnK':_0x4a414e(-0x219,-0x1f5)};return _0x503460['zqUmj'](Boolean,_0x97af18&&_0x503460['NLshJ'](typeof _0x97af18,_0x503460['EJLnK'])&&_0x503460['NLshJ'](typeof _0x97af18[_0x4a414e(-0x1fb,-a9_0x2f8ba9._0x2536f0)],_0x4a414e(-a9_0x2f8ba9._0x17575c,-0x250))&&Array[_0x4a414e(-a9_0x2f8ba9._0x2ca4aa,-a9_0x2f8ba9._0x1e04b9)](_0x97af18['pins']));}export class PCB{constructor(_0x39c912,_0x434b4a){const a9_0x68f1f2={_0x49bd8b:0x10e,_0x34ba61:0x209,_0x7d7f42:0x1e4,_0x52b0ef:0x1dd,_0x5f0683:0x176,_0x46a463:0x1d6,_0x3ca804:0x239,_0x19bd9e:0x1e7,_0x489734:0x1c7,_0x3ed915:0x1d6,_0x100224:0x1de,_0x1d5046:0x231,_0x3390f2:0x17f,_0xd6640e:0x129,_0x2d0bc5:0x1bb,_0x5b38e0:0x20b},_0x1011b5={'klJxS':function(_0x3b1e54,_0x3d1df1,_0x4efa48,_0x59df3b){return _0x3b1e54(_0x3d1df1,_0x4efa48,_0x59df3b);},'nBUyG':function(_0x42e678,_0x3017e0,_0x541e04,_0x3f51bb){return _0x42e678(_0x3017e0,_0x541e04,_0x3f51bb);},'cHlHk':function(_0x3709f4,_0x4068e4){return _0x3709f4||_0x4068e4;},'PQBvO':function(_0xcdcc74,_0x2dc37f,_0x25294c,_0x13e0bf,_0xf6acba){return _0xcdcc74(_0x2dc37f,_0x25294c,_0x13e0bf,_0xf6acba);}},_0x5d0a5c=(_0xfd418b(-0xe3,-a9_0x68f1f2._0x49bd8b)+_0xfd418b(-0xc6,-0xef)+_0xfd418b(-0x2ab,-a9_0x68f1f2._0x34ba61)+_0xfd418b(-0x131,-0x195)+_0xfd418b(-a9_0x68f1f2._0x7d7f42,-a9_0x68f1f2._0x52b0ef)+'|16|17|14|'+_0xfd418b(-0x1c8,-a9_0x68f1f2._0x5f0683))['split']('|');function _0xfd418b(_0x5a86ba,_0x53fac3){return a9_0x310250(_0x5a86ba,_0x53fac3- -0x392);}let _0x2038c0=0x1ffe+-0x6*0xb6+-0x1bba;while(!![]){switch(_0x5d0a5c[_0x2038c0++]){case'0':_PCB_grPolys[_0xfd418b(-0x1ad,-a9_0x68f1f2._0x46a463)](this,[]);continue;case'1':_PCB_pcb['set'](this,'');continue;case'2':_PCB_grRects[_0xfd418b(-0x243,-0x1d6)](this,[]);continue;case'3':_PCB_outlines[_0xfd418b(-0x210,-0x1d6)](this,[]);continue;case'4':_PCB_stagedComponents[_0xfd418b(-0x134,-0x1d6)](this,[]);continue;case'5':this['Schematic']=_0x1011b5['klJxS'](__classPrivateFieldGet,this,_PCB_options,'f')['Schematic']||new Schematic(_0x39c912);continue;case'6':_PCB_routerRegistry['set'](this,new Map());continue;case'7':_PCB_instances['add'](this);continue;case'8':_PCB_grTexts[_0xfd418b(-a9_0x68f1f2._0x3ca804,-a9_0x68f1f2._0x46a463)](this,[]);continue;case'9':_PCB_groups['set'](this,[]);continue;case'10':this['tracks']=[];continue;case'11':_PCB_grCircles[_0xfd418b(-a9_0x68f1f2._0x19bd9e,-a9_0x68f1f2._0x46a463)](this,[]);continue;case'12':_PCB_keepoutZones['set'](this,[]);continue;case'13':_PCB_existingBoardElements['set'](this,[]);continue;case'14':this['copper_thi'+'ckness']=_0x1011b5['nBUyG'](__classPrivateFieldGet,this,_PCB_options,'f')['copper_thi'+'ckness']||0x1c6a+-0x731*-0x4+0x35b*-0x11;continue;case'15':_PCB_stagedOutlines[_0xfd418b(-a9_0x68f1f2._0x489734,-a9_0x68f1f2._0x3ed915)](this,[]);continue;case'16':__classPrivateFieldSet(this,_PCB_options,_0x1011b5[_0xfd418b(-a9_0x68f1f2._0x100224,-a9_0x68f1f2._0x1d5046)](_0x434b4a,{'remove_orphans':!![],'thickness':1.6,'copper_thickness':0x23,'Schematic':new Schematic(_0x39c912)}),'f');continue;case'17':this[_0xfd418b(-a9_0x68f1f2._0x3390f2,-a9_0x68f1f2._0xd6640e)]=__classPrivateFieldGet(this,_PCB_options,'f')['thickness']||-0x25a*0x3+-0xd*0x2a6+0x297d+0.6000000000000001;continue;case'18':this['Boardname']=_0x39c912;continue;case'19':_PCB_components['set'](this,[]);continue;case'20':_PCB_options['set'](this,void(-0x1892+-0x8c6*-0x1+0x2*0x7e6));continue;case'21':_0x1011b5['PQBvO'](__classPrivateFieldGet,this,_PCB_instances,'m',_PCB_loadExistingBoardElements)[_0xfd418b(-a9_0x68f1f2._0x2d0bc5,-0x10b)](this);continue;case'22':this['outlines']=[];continue;case'23':_PCB_zones['set'](this,[]);continue;case'24':_PCB_grLines[_0xfd418b(-a9_0x68f1f2._0x5b38e0,-a9_0x68f1f2._0x3ed915)](this,[]);continue;}break;}}[a9_0x310250(0x1dc,0x290)+'uter'](_0x2d2078){const a9_0x28f0ee={_0x219809:0x292,_0x52cfbe:0x292,_0x5465a8:0x172},a9_0x120f47={_0x3b5911:0x361},_0x6d4da6={'nUzFT':function(_0xcc2b4e,_0xe33597,_0x498829,_0x344d9c){return _0xcc2b4e(_0xe33597,_0x498829,_0x344d9c);}},_0x376cc3={'register':(_0x50f7f3,_0x35f116,_0x5f1eff)=>{const _0x5d7bff={};_0x5d7bff['factory']=_0x35f116;function _0x5f5896(_0x2707cd,_0x22deaa){return a9_0xfc77(_0x22deaa- -a9_0x120f47._0x3b5911,_0x2707cd);}_0x5d7bff[_0x5f5896(-0x33c,-a9_0x28f0ee._0x219809)+'rid']=_0x5f1eff?.[_0x5f5896(-0x264,-a9_0x28f0ee._0x52cfbe)+_0x5f5896(-a9_0x28f0ee._0x5465a8,-0x18b)],_0x6d4da6[_0x5f5896(-0xe2,-0x18e)](__classPrivateFieldGet,this,_PCB_routerRegistry,'f')['set'](_0x50f7f3,_0x5d7bff);}};_0x2d2078(_0x376cc3);}[a9_0x310250(0x255,0x1bd)+'er'](_0x2fb2a2,_0x37b6da,_0x596160){const a9_0x21aaca={_0x499add:0x3db,_0x164bcc:0x3a6,_0x4e1284:0x333,_0x3acbfa:0x2ab,_0x8a94ac:0x312,_0x353c94:0x308,_0x8be017:0x343,_0x299867:0x297},_0x2925ea=__classPrivateFieldGet(this,_PCB_routerRegistry,'f')['get'](_0x2fb2a2);if(!_0x2925ea)throw new Error(_0x1d450f(a9_0x21aaca._0x499add,0x382)+'gorithm\x20\x27'+_0x2fb2a2+(_0x1d450f(a9_0x21aaca._0x164bcc,a9_0x21aaca._0x4e1284)+'egistered\x20'+_0x1d450f(a9_0x21aaca._0x3acbfa,0x297)+_0x1d450f(a9_0x21aaca._0x8a94ac,0x291)+'ce.\x20Use\x20ty'+_0x1d450f(0x350,a9_0x21aaca._0x353c94)+_0x1d450f(a9_0x21aaca._0x8be017,a9_0x21aaca._0x299867)+'()\x20first.'));function _0x1d450f(_0x51444a,_0x34983e){return a9_0x310250(_0x34983e,_0x51444a-0x132);}return _0x2925ea['factory'](_0x37b6da,_0x596160);}['getRouterG'+a9_0x310250(0x261,0x275)+'rator'](_0x361d5f){const a9_0x48d977={_0x599ded:0x4ae},_0x5b51ca={'HNset':function(_0x51810f,_0x80f287,_0x3fec94,_0x4b07c3){return _0x51810f(_0x80f287,_0x3fec94,_0x4b07c3);}};function _0x352dd4(_0x3b7480,_0x1e6f48){return a9_0x310250(_0x1e6f48,_0x3b7480-0x27e);}return _0x5b51ca[_0x352dd4(a9_0x48d977._0x599ded,0x50b)](__classPrivateFieldGet,this,_PCB_routerRegistry,'f')[_0x352dd4(0x498,0x508)](_0x361d5f)?.[_0x352dd4(0x3dc,0x3f2)+_0x352dd4(0x4e3,0x4cd)];}['getRegiste'+'redRouters'](){const a9_0x3ac44a={_0x968a9d:0x1a6},a9_0x5af8d1={_0x3b0f0:0x33c};function _0x11999c(_0x2edb82,_0x19669e){return a9_0x310250(_0x19669e,_0x2edb82- -a9_0x5af8d1._0x3b0f0);}return Array[_0x11999c(-0x1fa,-0x2b6)](__classPrivateFieldGet(this,_PCB_routerRegistry,'f')[_0x11999c(-0x185,-a9_0x3ac44a._0x968a9d)]());}get[a9_0x310250(0x241,0x257)](){return __classPrivateFieldGet(this,_PCB_options,'f');}get[a9_0x310250(0x2c4,0x20c)](){return __classPrivateFieldGet(this,_PCB_grLines,'f');}get[a9_0x310250(0x14b,0x1b3)](){return __classPrivateFieldGet(this,_PCB_grCircles,'f');}get['grRects'](){return __classPrivateFieldGet(this,_PCB_grRects,'f');}get[a9_0x310250(0x13e,0x17f)](){const a9_0x24a49d={_0x563e0d:0x151},_0x35bc1c={'jDtch':function(_0x210d8c,_0x7fca0d,_0x4c1d98,_0x4bb842){return _0x210d8c(_0x7fca0d,_0x4c1d98,_0x4bb842);}};function _0x25e319(_0xc38eed,_0x1034a7){return a9_0x310250(_0x1034a7,_0xc38eed- -0x187);}return _0x35bc1c[_0x25e319(0x12c,a9_0x24a49d._0x563e0d)](__classPrivateFieldGet,this,_PCB_grPolys,'f');}get['stagedOutl'+a9_0x310250(0x21c,0x17b)](){return __classPrivateFieldGet(this,_PCB_stagedOutlines,'f');}get['zones'](){const _0x41f037={'wshID':function(_0x47102a,_0xc2c3bb,_0x451318,_0x4e4fef){return _0x47102a(_0xc2c3bb,_0x451318,_0x4e4fef);}};return _0x41f037['wshID'](__classPrivateFieldGet,this,_PCB_zones,'f');}get[a9_0x310250(0x1a0,0x245)+'es'](){return __classPrivateFieldGet(this,_PCB_keepoutZones,'f');}get[a9_0x310250(0x294,0x1dc)](){return __classPrivateFieldGet(this,_PCB_components,'f');}get[a9_0x310250(0x15a,0x1f3)+'onents'](){const a9_0x5cac21={_0x2a9ad6:0x35},a9_0x2c3c87={_0x3aef2c:0x22e},_0x1652e3={'LZyIp':function(_0x2f1ee8,_0x5d4431,_0x359ad8,_0x399ca0){return _0x2f1ee8(_0x5d4431,_0x359ad8,_0x399ca0);}};function _0x40d526(_0x331512,_0x41346e){return a9_0x310250(_0x331512,_0x41346e- -a9_0x2c3c87._0x3aef2c);}return _0x1652e3[_0x40d526(0x93,a9_0x5cac21._0x2a9ad6)](__classPrivateFieldGet,this,_PCB_stagedComponents,'f');}get['groups'](){const a9_0x56f594={_0x45f4e6:0x32d},a9_0x5acfd7={_0x219e4c:0x15c};function _0x2040d4(_0x2a7455,_0x2ffe3e){return a9_0x310250(_0x2a7455,_0x2ffe3e-a9_0x5acfd7._0x219e4c);}const _0x16465a={'NVcjo':function(_0x401e4a,_0x5c0cff,_0x21ec86,_0x512df4){return _0x401e4a(_0x5c0cff,_0x21ec86,_0x512df4);}};return _0x16465a[_0x2040d4(a9_0x56f594._0x45f4e6,0x2f4)](__classPrivateFieldGet,this,_PCB_groups,'f');}get[a9_0x310250(0x17a,0x236)+'p'](){const a9_0x297e8f={_0xffefef:0x470},_0x1d64c0=new Map();return __classPrivateFieldGet(this,_PCB_groups,'f')['forEach'](_0x48220b=>{const _0x3058f8=_0x48220b['match'](/^\(group\s+"([^"]+)"/);function _0x5969db(_0x39931d,_0x5a0d16){return a9_0xfc77(_0x39931d-0x343,_0x5a0d16);}_0x3058f8&&_0x1d64c0[_0x5969db(a9_0x297e8f._0xffefef,0x3f1)](_0x3058f8[-0x1bfe*0x1+0x154*-0x17+0x1*0x3a8b],_0x48220b);}),_0x1d64c0;}get[a9_0x310250(0x1d9,0x1aa)+'ardElement'+'s'](){return __classPrivateFieldGet(this,_PCB_existingBoardElements,'f');}get[a9_0x310250(0x1fd,0x283)](){const _0x3970bf={'OmOmj':function(_0x5f09ed,_0x35edca,_0x1cc537,_0x3dfb58){return _0x5f09ed(_0x35edca,_0x1cc537,_0x3dfb58);}};return _0x3970bf['OmOmj'](__classPrivateFieldGet,this,_PCB_grTexts,'f');}get['pcb'](){const _0x3e2fb1={'GNwig':function(_0x3a07dc,_0x595c7a,_0x282f8a,_0x2afb9b){return _0x3a07dc(_0x595c7a,_0x282f8a,_0x2afb9b);}};return _0x3e2fb1['GNwig'](__classPrivateFieldGet,this,_PCB_pcb,'f');}get['outlines_p'+a9_0x310250(0x296,0x215)](){const _0x5747e0={'TUJJa':function(_0x38d74b,_0x4320fa,_0x5cf060,_0x22ecea){return _0x38d74b(_0x4320fa,_0x5cf060,_0x22ecea);}};return _0x5747e0['TUJJa'](__classPrivateFieldGet,this,_PCB_outlines,'f');}get[a9_0x310250(0x2ee,0x250)](){const a9_0x345233={_0x4948ee:0x148,_0x49b284:0x1a5},a9_0x5d7ece={_0x590b9b:0xa4};function _0x4f2d25(_0x31b0a2,_0xcc213a){return a9_0x310250(_0x31b0a2,_0xcc213a- -a9_0x5d7ece._0x590b9b);}return{...__classPrivateFieldGet(this,_PCB_options,'f'),'remove_orphans':__classPrivateFieldGet(this,_PCB_options,'f')['remove_orp'+_0x4f2d25(a9_0x345233._0x4948ee,a9_0x345233._0x49b284)]??!![]};}[a9_0x310250(0x23a,0x23e)](_0x3a081a,_0x204a2d,_0x202acc,_0x15e501,_0x47f0d){const a9_0x310fa4={_0x11d8f1:0x3a0,_0x152b81:0x474,_0x16c478:0x49d},_0x47bf65={'Zhhdt':function(_0x3e34e4,_0x199102,_0x291985,_0x4c445f,_0x2f1cb5){return _0x3e34e4(_0x199102,_0x291985,_0x4c445f,_0x2f1cb5);}};function _0x121659(_0x14e1b9,_0xaa9341){return a9_0x310250(_0xaa9341,_0x14e1b9-0x1ed);}return _0x47bf65[_0x121659(0x41e,a9_0x310fa4._0x11d8f1)](__classPrivateFieldGet,this,_PCB_instances,'m',_PCB_resolveNet)[_0x121659(a9_0x310fa4._0x152b81,a9_0x310fa4._0x16c478)](this,_0x3a081a,_0x204a2d,_0x202acc,_0x15e501,_0x47f0d);}['_addCompon'+'entToBoard'+a9_0x310250(0x21f,0x1e2)](_0x32395b){const a9_0x211645={_0x330c47:0x5ed},a9_0x224eed={_0x58519c:0x336};function _0x135359(_0x49b9b5,_0x11098f){return a9_0x310250(_0x11098f,_0x49b9b5-a9_0x224eed._0x58519c);}__classPrivateFieldGet(this,_PCB_instances,'m',_PCB_addComponentToBoard)[_0x135359(0x5bd,a9_0x211645._0x330c47)](this,_0x32395b);}['_resolveNe'+'tPublic'](_0x1901e7,_0x517a69,_0x53aff9,_0x531d79,_0x1d15a9){const a9_0x13da22={_0x1e17e7:0x279};function _0x31ec21(_0x53635f,_0x1596e6){return a9_0x310250(_0x1596e6,_0x53635f-0x52);}const _0x5cccae={'bjEDG':function(_0x906361,_0x556999,_0xe48b89,_0x1e9d20,_0x41e3c5){return _0x906361(_0x556999,_0xe48b89,_0x1e9d20,_0x41e3c5);}};return _0x5cccae[_0x31ec21(a9_0x13da22._0x1e17e7,0x30f)](__classPrivateFieldGet,this,_PCB_instances,'m',_PCB_resolveNet)['call'](this,_0x1901e7,_0x517a69,_0x53aff9,_0x531d79,_0x1d15a9);}['_createFoo'+a9_0x310250(0x223,0x1f1)+a9_0x310250(0x1a6,0x1e2)](_0x10dc54,_0x474e09){return __classPrivateFieldGet(this,_PCB_instances,'m',_PCB__create_footprint_node)['call'](this,_0x10dc54,_0x474e09);}['_updateFoo'+'tprintNode'+a9_0x310250(0x1de,0x1e2)](_0xa880a0,_0x55b1ab,_0x3d2d7e){const a9_0x169d65={_0x4c0e76:0x4f7,_0x29f76a:0x4f7};function _0x378f42(_0x215e21,_0x2d6854){return a9_0x310250(_0x2d6854,_0x215e21-0x270);}return __classPrivateFieldGet(this,_PCB_instances,'m',_PCB__update_footprint_node)[_0x378f42(a9_0x169d65._0x4c0e76,a9_0x169d65._0x29f76a)](this,_0xa880a0,_0x55b1ab,_0x3d2d7e);}['_clearComp'+'onents'](){const a9_0xe29ef6={_0xa3d6bc:0x1da},_0x423c37={'GjJiI':function(_0x3962d6,_0x4e52db,_0x2d7061,_0x236267,_0x59b41d){return _0x3962d6(_0x4e52db,_0x2d7061,_0x236267,_0x59b41d);}};function _0x448507(_0x398d13,_0x1d7ad5){return a9_0x310250(_0x398d13,_0x1d7ad5- -0x453);}_0x423c37[_0x448507(-a9_0xe29ef6._0xa3d6bc,-0x19b)](__classPrivateFieldSet,this,_PCB_components,[],'f');}[a9_0x310250(0x276,0x214)+'ines'](){const _0xc5b173={'RVRIL':function(_0x37dbe1,_0xee14ac,_0x4a7ecb,_0x413097,_0x111ec2){return _0x37dbe1(_0xee14ac,_0x4a7ecb,_0x413097,_0x111ec2);}};_0xc5b173['RVRIL'](__classPrivateFieldSet,this,_PCB_outlines,[],'f');}['_clearGrou'+'ps'](){const _0x9aff4f={'XiDfH':function(_0x52f73d,_0x44b1be,_0x42b23a,_0x230127,_0x54f6d7){return _0x52f73d(_0x44b1be,_0x42b23a,_0x230127,_0x54f6d7);}};_0x9aff4f['XiDfH'](__classPrivateFieldSet,this,_PCB_groups,[],'f');}[a9_0x310250(0x17c,0x1b6)](_0x32758f){__classPrivateFieldSet(this,_PCB_pcb,_0x32758f,'f');}[a9_0x310250(0x2a1,0x204)](..._0x198e42){const a9_0x395323={_0x1f2c36:0x43c,_0x4f4819:0x528,_0x3184f0:0x4b5},a9_0x220bdb={_0x4f487b:0x330},_0x64df40={'uVlmN':function(_0x40a54b,_0x36c42b,_0x4ff939,_0x1620c9,_0x5d655a){return _0x40a54b(_0x36c42b,_0x4ff939,_0x1620c9,_0x5d655a);}};_0x198e42['forEach'](_0x6dc542=>{function _0x2833ca(_0x28fc9d,_0x3db004){return a9_0xfc77(_0x28fc9d-a9_0x220bdb._0x4f487b,_0x3db004);}_0x64df40[_0x2833ca(0x489,a9_0x395323._0x1f2c36)](__classPrivateFieldGet,this,_PCB_instances,'m',_PCB_unstageComponent)[_0x2833ca(a9_0x395323._0x4f4819,a9_0x395323._0x3184f0)](this,_0x6dc542),__classPrivateFieldGet(this,_PCB_instances,'m',_PCB_addComponentToBoard)[_0x2833ca(0x528,0x4ea)](this,_0x6dc542);});}['stage'](..._0x358a85){_0x358a85['forEach'](_0x4e0099=>{__classPrivateFieldGet(this,_PCB_instances,'m',_PCB_stageComponent)['call'](this,_0x4e0099);});}['group'](_0x4691ef,..._0x13495d){const a9_0x40cafb={_0xc058ab:0x2b4,_0x1f1b8b:0x269,_0x4a9f0c:0x21b,_0x144fba:0x10d,_0x219953:0x1b0},a9_0x3401bc={_0x55ac72:0x9f,_0x40453c:0x56,_0x33b4e5:0x1f},a9_0x2de40d={_0x1253a5:0x8a,_0x13ece1:0x100};function _0x83f3d3(_0x303269,_0x4d072c){return a9_0x310250(_0x303269,_0x4d072c- -0x44d);}const _0x35e07a={'peOof':function(_0x313a9d,_0x1e6b65,_0x379094,_0x5567da){return _0x313a9d(_0x1e6b65,_0x379094,_0x5567da);}};let _0x38fcc4='';const _0x201e55=[];_0x13495d[_0x83f3d3(-a9_0x40cafb._0xc058ab,-0x28e)](_0x468c3f=>{const a9_0x2b2c48={_0x1f794d:0x6},a9_0x5dc4b5={_0xd5fab5:0x31};function _0x6e9e8(_0x41023b,_0x398771){return _0x83f3d3(_0x398771,_0x41023b-0x295);}if(_0x468c3f instanceof Component)_0x201e55['push'](_0x468c3f);else{if(_0x468c3f instanceof TrackBuilder){const _0x47b885=_0x468c3f[_0x6e9e8(a9_0x2de40d._0x1253a5,a9_0x2de40d._0x13ece1)+'s']();_0x47b885['forEach'](_0x33e773=>{function _0x3610a9(_0xe02065,_0x365f54){return _0x6e9e8(_0xe02065-a9_0x5dc4b5._0xd5fab5,_0x365f54);}_0x38fcc4+='\x22'+_0x33e773[_0x3610a9(0x7c,a9_0x2b2c48._0x1f794d)]+'\x22\x20';});}}});_0x201e55[_0x83f3d3(-a9_0x40cafb._0x1f1b8b,-a9_0x40cafb._0x4a9f0c)]>0x521+-0x40e+0x5*-0x37&&(this['place'](..._0x201e55),_0x201e55['forEach'](_0x1516a5=>{if(_0x1516a5['dnp']===!![])return;function _0x301b1e(_0x17368b,_0x227ef4){return _0x83f3d3(_0x227ef4,_0x17368b-0x2e9);}_0x38fcc4+='\x22'+_0x1516a5[_0x301b1e(a9_0x3401bc._0x55ac72,a9_0x3401bc._0x40453c)]+'\x22\x20',!_0x1516a5[_0x301b1e(0x43,0x1c)]['includes'](_0x4691ef)&&_0x1516a5[_0x301b1e(0x43,a9_0x3401bc._0x33b4e5)]['push'](_0x4691ef);}));const _0x5de184=__classPrivateFieldGet(this,_PCB_groups,'f')[_0x83f3d3(-a9_0x40cafb._0x144fba,-a9_0x40cafb._0x219953)](_0x459e0f=>_0x459e0f[_0x83f3d3(-0x244,-0x23e)]('(group\x20\x22'+_0x4691ef+'\x22')),_0x2d1a47='(group\x20\x22'+_0x4691ef+('\x22\x20(members'+'\x20')+_0x38fcc4+'))';_0x5de184!==-(-0xe47+-0x1d57+0x2b9f)?_0x35e07a[_0x83f3d3(-0x2b0,-0x218)](__classPrivateFieldGet,this,_PCB_groups,'f')[_0x5de184]=_0x2d1a47:_0x35e07a[_0x83f3d3(-0x192,-0x218)](__classPrivateFieldGet,this,_PCB_groups,'f')[_0x83f3d3(-0x2ce,-0x28d)](_0x2d1a47);}[a9_0x310250(0x277,0x2af)](_0x33893a){const a9_0x19d338={_0x147a68:0x2b0,_0x3e606f:0x25a,_0x19ef78:0x32b,_0x195202:0x35b,_0x3f7417:0x347,_0x34bb10:0x2a4,_0x2a5d65:0x2b6,_0x48f261:0x1fb,_0x4f3f35:0x2d3,_0x1b804b:0x2ed,_0x1dce46:0x2b2},a9_0x5e22bb={_0x7a3418:0xf2},_0x401d1d={'PXwvj':function(_0x444cce){return _0x444cce();}},_0x164cc0={'text':_0x33893a['text'],'x':_0x33893a['x'],'y':_0x33893a['y'],'layer':_0x33893a[_0x574437(0x271,0x26f)],'width':_0x33893a['width']||0x1*-0x2240+0xd02*-0x3+0x4947+0.27,'height':_0x33893a[_0x574437(a9_0x19d338._0x147a68,a9_0x19d338._0x3e606f)]||-0x67f*0x2+0x1866+0x1a1*-0x7+0.27,'thickness':_0x33893a[_0x574437(a9_0x19d338._0x19ef78,a9_0x19d338._0x195202)],'rotation':_0x33893a[_0x574437(0x2bb,a9_0x19d338._0x3f7417)]||0x2cc+-0x167c+0x54*0x3c,'font':_0x33893a[_0x574437(a9_0x19d338._0x34bb10,a9_0x19d338._0x2a5d65)],'bold':_0x33893a['bold'],'italic':_0x33893a[_0x574437(a9_0x19d338._0x48f261,0x23c)],'justify':_0x33893a['justify'],'hide':_0x33893a['hide'],'uuid':_0x33893a['uuid']||_0x401d1d[_0x574437(a9_0x19d338._0x4f3f35,a9_0x19d338._0x1b804b)](generateUuid)};function _0x574437(_0x214ba3,_0x1e84af){return a9_0x310250(_0x214ba3,_0x1e84af-a9_0x5e22bb._0x7a3418);}__classPrivateFieldGet(this,_PCB_grTexts,'f')[_0x574437(0x2d4,a9_0x19d338._0x1dce46)](_0x164cc0);}async[a9_0x310250(0x153,0x194)](..._0x6bc868){const _0x2b702f={'zyCCu':function(_0xb76940,_0x4d5d39,..._0x19ab2c){return _0xb76940(_0x4d5d39,..._0x19ab2c);}};return _0x2b702f['zyCCu'](createBoard,this,..._0x6bc868);}['getCallSit'+'e'](){const a9_0x27df0e={_0x3cb230:0x173,_0x675220:0x53,_0x506eaf:0xe1,_0x588ac3:0x63,_0x46df0c:0x9b,_0x192b60:0xba,_0x2ed185:0x16e,_0x2f4885:0x1fc,_0x4b9bef:0x175,_0x2b7fc5:0x100,_0x31695c:0x5d,_0x3344d8:0xb2,_0x566581:0x197,_0x2a6587:0x149,_0x2e622e:0x237},_0x19a315={'PwMIn':function(_0x1b3051,_0x4ee6b2){return _0x1b3051<_0x4ee6b2;},'vQRzH':_0x1e54b1(-0x19e,-a9_0x27df0e._0x3cb230)+'es','cYeaB':_0x1e54b1(-0xea,-a9_0x27df0e._0x675220),'jBNVe':function(_0x7fd291,_0x49f7d2,_0x47d96e){return _0x7fd291(_0x49f7d2,_0x47d96e);}},_0x429365=new Error()['stack'];if(!_0x429365)return undefined;const _0x5b1831=_0x429365['split']('\x0a');for(let _0x2f58e2=-0x1275+-0x3*-0x740+-0x348;_0x19a315['PwMIn'](_0x2f58e2,_0x5b1831[_0x1e54b1(-a9_0x27df0e._0x506eaf,-a9_0x27df0e._0x588ac3)]);_0x2f58e2++){const _0x3f3e84=_0x5b1831[_0x2f58e2];if(_0x3f3e84){const _0x29b71=_0x3f3e84[_0x1e54b1(-a9_0x27df0e._0x46df0c,-a9_0x27df0e._0x192b60)](/at\s+(?:(.+?)\s+\()?(.+):(\d+):(\d+)\)?/);if(_0x29b71){const _0x26525c=_0x29b71[0x27*0x11+-0x1*0x1362+-0xfd*-0x11];if(!_0x26525c[_0x1e54b1(-a9_0x27df0e._0x2ed185,-a9_0x27df0e._0x2f4885)](_0x1e54b1(-a9_0x27df0e._0x4b9bef,-0x118)+'builder')&&!_0x26525c['includes']('pcb.ts')&&!_0x26525c[_0x1e54b1(-a9_0x27df0e._0x2ed185,-a9_0x27df0e._0x2b7fc5)]('pcb.js')&&!_0x26525c['includes'](_0x19a315[_0x1e54b1(-a9_0x27df0e._0x31695c,-a9_0x27df0e._0x3344d8)])&&!_0x26525c['includes'](_0x1e54b1(-a9_0x27df0e._0x566581,-a9_0x27df0e._0x2a6587))&&!_0x26525c['includes'](_0x19a315['cYeaB']))return{'file':_0x26525c,'line':parseInt(_0x29b71[0x65b+-0x4*-0x78e+-0x2490],-0x18d2+-0x14e7+0x2dc3),'column':_0x19a315['jBNVe'](parseInt,_0x29b71[0x2270+0x1*-0xde9+-0x1483],0x267d+0x2118+-0x478b)};}}}if(_0x5b1831[-0x72c*0x4+0x478+0xe*0x1bb]){const _0x361da7=_0x5b1831[-0x70c+-0x1fd2+0x9b8*0x4]['match'](/at\s+(?:(.+?)\s+\()?(.+):(\d+):(\d+)\)?/);if(_0x361da7)return{'file':_0x361da7[0xaff+-0x15cb+0xace],'line':parseInt(_0x361da7[0x248d+-0x270*-0x4+-0x18b*0x1e],-0xb9*-0x1c+0x112*-0x2+-0x120e),'column':_0x19a315[_0x1e54b1(-0x1b1,-a9_0x27df0e._0x2e622e)](parseInt,_0x361da7[0x1d70+0x56c*-0x4+-0x7bc],0x1097+-0x2*-0x8f3+-0x2273)};}function _0x1e54b1(_0x12558e,_0x3a0d57){return a9_0x310250(_0x3a0d57,_0x12558e- -0x313);}return undefined;}[a9_0x310250(0x283,0x222)+'iaCurrentC'+'apacity'](_0x460978,_0x62ec25,_0x4d45c2,_0x13b5fa,_0x4b2bc8=0x294+0x1568+-0x17f2){const a9_0x1fd76c={_0x56d02a:0x49a,_0x350f8f:0x40c,_0x198edb:0x435,_0x173cb5:0x3a9},_0x406e70={'CWuGE':function(_0x322543,_0x1a2926,_0x26a9e7,_0x4e75fc,_0x8b5df1,_0xd57471){return _0x322543(_0x1a2926,_0x26a9e7,_0x4e75fc,_0x8b5df1,_0xd57471);}},_0x9f6686=_0x4d45c2??this['copper_thi'+_0x281c16(a9_0x1fd76c._0x56d02a,a9_0x1fd76c._0x350f8f)];function _0x281c16(_0x8206f4,_0x23c1ac){return a9_0x310250(_0x23c1ac,_0x8206f4-0x27d);}const _0x1f9b69=_0x13b5fa??this['thickness'];return _0x406e70[_0x281c16(a9_0x1fd76c._0x198edb,a9_0x1fd76c._0x173cb5)](calculateViaCurrentCapacity,_0x460978,_0x62ec25,_0x9f6686,_0x1f9b69,_0x4b2bc8);}['via']({at:_0x18e91e,size:_0x45f757,drill:_0x58dc1d,net:_0x39c55d,powerInfo:_0x58d6c3}={}){const a9_0x3fd390={_0x1f83e1:0xe,_0x16dd98:0xba,_0x4c51b7:0x15,_0x215c9d:0x124,_0x49e297:0xf4,_0x51d225:0x30};function _0x433554(_0x44985c,_0x509d54){return a9_0x310250(_0x44985c,_0x509d54- -0x2bf);}const _0x5903d9={};_0x5903d9[_0x433554(0x98,-a9_0x3fd390._0x1f83e1)]=function(_0x7af66d,_0x2c52d4){return _0x7af66d||_0x2c52d4;},_0x5903d9['TTUFW']='F.Cu',_0x5903d9[_0x433554(-0x10e,-a9_0x3fd390._0x16dd98)]=_0x433554(-0x21,-a9_0x3fd390._0x4c51b7);const _0x5ea8e4=_0x5903d9,_0x47e97f={};_0x47e97f['x']=0x0,_0x47e97f['y']=0x0;const _0x35e739=_0x18e91e||_0x47e97f,_0x1054c2={};_0x1054c2['x']=_0x35e739['x'],_0x1054c2['y']=_0x35e739['y'],_0x1054c2['rotation']=0x0,_0x1054c2['side']=_0x433554(-a9_0x3fd390._0x215c9d,-a9_0x3fd390._0x49e297);const _0x562433=new Component({'via':!![],'pcb':_0x1054c2,'viaData':{'uuid':generateUuid(),'at':_0x35e739,'size':_0x45f757||0x1d99*0x1+-0xbcd+-0x11cc+0.8,'drill':_0x5ea8e4[_0x433554(a9_0x3fd390._0x51d225,-a9_0x3fd390._0x1f83e1)](_0x58dc1d,0x14bd*-0x1+0x1987*-0x1+-0x292*-0x12+0.4),'layers':[_0x5ea8e4[_0x433554(-0x1ad,-0x148)],_0x5ea8e4['LKloq']],'net':_0x39c55d,'powerInfo':_0x58d6c3}});return this['stage'](_0x562433),_0x562433;}[a9_0x310250(0x1a8,0x19b)](_0x3dc1ba){zone(this,_0x3dc1ba);}['keepout'](_0x2c38c7){const a9_0x94108c={_0x1b2080:0x231},a9_0x3e5b85={_0x3acf10:0x39f};function _0x30e895(_0x1f4a75,_0x511cad){return a9_0x310250(_0x1f4a75,_0x511cad- -a9_0x3e5b85._0x3acf10);}const _0x122580={'uGhnv':function(_0xf643b,_0x45c793,_0x4eb7a8){return _0xf643b(_0x45c793,_0x4eb7a8);}};_0x122580[_0x30e895(-0x1e4,-a9_0x94108c._0x1b2080)](keepout,this,_0x2c38c7);}['line'](_0x2c20e0){pcbLine(this,_0x2c20e0);}['circle'](_0x188675){pcbCircle(this,_0x188675);}[a9_0x310250(0x184,0x1e3)](_0x13643e){const _0x57799f={'QECWt':function(_0x1714f8,_0x3cd8f1,_0xca7a19){return _0x1714f8(_0x3cd8f1,_0xca7a19);}};_0x57799f['QECWt'](pcbRect,this,_0x13643e);}['poly'](_0x28b165){pcbPoly(this,_0x28b165);}[a9_0x310250(0x117,0x16b)](_0x1ea4da,_0x5bedd9,_0x231b69,_0x1c4806,_0x2f10cc=-0xa6*0x21+0x14d8+0x8e,_0x3d007f){pcbOutline(this,_0x1ea4da,_0x5bedd9,_0x231b69,_0x1c4806,_0x2f10cc,_0x3d007f);}['_getStaged'+a9_0x310250(0x1b7,0x13b)](){return _getStagedOutlines(this);}['_getKeepou'+'tZones'](){return __classPrivateFieldGet(this,_PCB_keepoutZones,'f');}['_getCompon'+a9_0x310250(0xd9,0x141)](){const a9_0x74780f={_0x5d0873:0x47};function _0x3beed7(_0x2f577a,_0x59b08c){return a9_0x310250(_0x59b08c,_0x2f577a-a9_0x74780f._0x5d0873);}const _0x3921d9={'LrDhU':function(_0x1a21b2,_0x16e3db,_0x448912,_0x10e4ce){return _0x1a21b2(_0x16e3db,_0x448912,_0x10e4ce);}};return _0x3921d9[_0x3beed7(0x2a6,0x345)](__classPrivateFieldGet,this,_PCB_components,'f');}['_getStaged'+'Components'](){const _0x86e854={'mMqsl':function(_0x1e2afd,_0x58543d,_0x25dbc0,_0x4f3200){return _0x1e2afd(_0x58543d,_0x25dbc0,_0x4f3200);}};return _0x86e854['mMqsl'](__classPrivateFieldGet,this,_PCB_stagedComponents,'f');}[a9_0x310250(0x11e,0x197)+a9_0x310250(0x1c0,0x1e9)+a9_0x310250(0x1b7,0x166)](_0x476d23){const _0x2f8898={'bMKem':function(_0x518868,_0x3dd86c,_0x292db1){return _0x518868(_0x3dd86c,_0x292db1);}};_0x2f8898['bMKem'](_removeStagedOutlinesByUuid,this,_0x476d23);}[a9_0x310250(0x1fb,0x24d)](_0x527aef,_0x248e8f,_0x973521=-0x2380+-0x95*0x17+0x5*0x9c7+0.05,_0x43e9f5='F.Cu',_0x31ce9e=![],_0x149ad9,_0x372167){const a9_0x24a2c9={_0x5a3310:0x45,_0x511859:0x48,_0xfde265:0x42,_0x19a393:0xad,_0x2878ac:0x2a,_0x4e387d:0x5e,_0x541b3c:0x11b,_0x29daf9:0x5e,_0x2da9de:0x2d},_0x1d3212={};_0x1d3212['GkFMF']=_0x1cc114(-0x14,-a9_0x24a2c9._0x5a3310);const _0x5c8c4f=_0x1d3212,_0x16a2dc=_0x149ad9||generateUuid(),_0x14badd={};_0x14badd[_0x1cc114(-0x51,a9_0x24a2c9._0x511859)]=_0x5c8c4f['GkFMF'],_0x14badd[_0x1cc114(-a9_0x24a2c9._0xfde265,0x6d)]=_0x16a2dc,_0x14badd['layer']=_0x43e9f5,_0x14badd[_0x1cc114(-a9_0x24a2c9._0xfde265,0x5f)+'h']=_0x973521,_0x14badd[_0x1cc114(-0x94,-0x52)]=_0x527aef;function _0x1cc114(_0x3205e4,_0x8dd990){return a9_0x310250(_0x3205e4,_0x8dd990- -0x196);}_0x14badd[_0x1cc114(a9_0x24a2c9._0x19a393,0xc6)]=_0x248e8f,_0x14badd['locked']=_0x31ce9e,_0x14badd['net']=_0x372167;const _0x321f4d=_0x14badd;return __classPrivateFieldGet(this,_PCB_stagedOutlines,'f')[_0x1cc114(-0x42,a9_0x24a2c9._0x2878ac)]({'uuid':_0x16a2dc,'x':_0x321f4d['start']['x'],'y':_0x321f4d[_0x1cc114(-0x107,-0x52)]['y'],'width':Math[_0x1cc114(0x64,-a9_0x24a2c9._0x4e387d)](_0x321f4d['end']['x']-_0x321f4d['start']['x']),'height':Math[_0x1cc114(-a9_0x24a2c9._0x541b3c,-a9_0x24a2c9._0x29daf9)](_0x321f4d[_0x1cc114(a9_0x24a2c9._0x2da9de,0xc6)]['y']-_0x321f4d['start']['y']),'filletRadius':0x0,'elements':[_0x321f4d]}),_0x16a2dc;}['track'](_0x5b1868){return new TrackBuilder(this,_0x5b1868);}['_pinToIden'+'tifier'](_0x4f2ac2){const a9_0x5cc30c={_0x49aa39:0x409,_0x43dc57:0x3fd},_0x182dfc={'wFPxA':function(_0x3d8839,_0x4a873d){return _0x3d8839(_0x4a873d);}};function _0x4bcb31(_0x302899,_0x2d07d6){return a9_0x310250(_0x302899,_0x2d07d6-0x197);}return _0x182dfc[_0x4bcb31(a9_0x5cc30c._0x49aa39,a9_0x5cc30c._0x43dc57)](pinToIdentifier,_0x4f2ac2);}['_pinsMatch'](_0xd900d5,_0x238cd6){return pinsMatch(_0xd900d5,_0x238cd6);}['_connectio'+a9_0x310250(0x19e,0x224)](_0x2654ff,_0x1b3f6f,_0x434019,_0x55fd71){const a9_0x4227d1={_0x29ef7b:0x5c5},a9_0x50b0e4={_0x1cc264:0x34f},_0x540506={'UWxXH':function(_0x261443,_0x3215df,_0x232eee,_0x51832b,_0x18da7d){return _0x261443(_0x3215df,_0x232eee,_0x51832b,_0x18da7d);}};function _0x12f1a4(_0x21a84b,_0x4b23e6){return a9_0x310250(_0x21a84b,_0x4b23e6-a9_0x50b0e4._0x1cc264);}return _0x540506[_0x12f1a4(0x5b0,a9_0x4227d1._0x29ef7b)](connectionMatches,_0x2654ff,_0x1b3f6f,_0x434019,_0x55fd71);}async['route'](_0x14b061,_0x1c9558){const a9_0x21be7b={_0x24a75e:0xe0};function _0x1cd799(_0x47c480,_0x1277ac){return a9_0x310250(_0x1277ac,_0x47c480-a9_0x21be7b._0x24a75e);}const _0x22dd83={'ZHUhz':function(_0x40770a,_0x30d346){return _0x40770a(_0x30d346);},'fByAF':function(_0x4763c3,_0x46031,_0x1ec4da,_0x479c74){return _0x4763c3(_0x46031,_0x1ec4da,_0x479c74);}};if(_0x22dd83['ZHUhz'](isSchematicNetDefinition,_0x14b061))return _0x22dd83['fByAF'](a9_0x1f0453,this,_0x14b061,_0x1c9558);return await this[_0x1cd799(0x2f9,0x34d)](_0x14b061);}async[a9_0x310250(0x15f,0x219)](_0x2d94cb){const a9_0x122ea5={_0x1cd6fc:0x184,_0x405342:0x29f},a9_0x297a35={_0x269da3:0x6e},_0x19d88a={'xosjs':function(_0x3f681b,_0x55e992,_0x56ea95){return _0x3f681b(_0x55e992,_0x56ea95);}};!this[_0x365d20(a9_0x122ea5._0x1cd6fc,0x124)+'toroutes']&&(this['_pendingAu'+_0x365d20(0x264,0x21a)]=new Set());function _0x365d20(_0x37be50,_0x466c72){return a9_0x310250(_0x37be50,_0x466c72- -a9_0x297a35._0x269da3);}const _0x55aee9=this['_pendingAu'+_0x365d20(a9_0x122ea5._0x405342,0x21a)],_0x5f1b32=_0x19d88a['xosjs'](autoroute,this,_0x2d94cb);_0x55aee9['add'](_0x5f1b32);try{const _0x4e307f=await _0x5f1b32;return _0x4e307f;}finally{_0x55aee9['delete'](_0x5f1b32);}}async['waitForPen'+'dingAutoro'+a9_0x310250(0x1f1,0x1b9)](){const a9_0x145e31={_0x4eeb99:0x62,_0x526504:0xe,_0xa7fd99:0x95},a9_0x3de52c={_0x5b7646:0x1f4};function _0x7ef63f(_0x2b0157,_0x5ee181){return a9_0x310250(_0x5ee181,_0x2b0157- -a9_0x3de52c._0x5b7646);}const _0x4b41c1={};_0x4b41c1[_0x7ef63f(0xe,-0x9d)]=function(_0x32ff45,_0x4518f0){return _0x32ff45===_0x4518f0;};const _0x84c111=_0x4b41c1,_0x36ec70=this[_0x7ef63f(-a9_0x145e31._0x4eeb99,-0x11f)+'toroutes'];if(!_0x36ec70||_0x84c111[_0x7ef63f(a9_0x145e31._0x526504,-a9_0x145e31._0xa7fd99)](_0x36ec70['size'],0x21a8+0xd54+-0x2efc))return;await Promise['all'](Array['from'](_0x36ec70));}[a9_0x310250(0xf8,0x187)+a9_0x310250(0x184,0x206)](_0x2d7e81,_0x212ea3,_0x434932){return pointOnLineSegment(_0x2d7e81,_0x212ea3,_0x434932);}async[a9_0x310250(0x173,0x19c)+'atch'](_0x3a0581,_0x683ca1){const a9_0x1ad8fd={_0x2ffe4a:0x467,_0x573029:0x4cd,_0x3f2392:0x43e,_0xa1eb80:0x427,_0xe0dfb7:0x422,_0x3d44fd:0x396,_0x3a2bb8:0x40b,_0x5b5e57:0x3b2,_0x35a851:0x49d,_0x1828eb:0x485,_0x369a5e:0x4d8,_0x2cf335:0x571,_0x3543c5:0x50a,_0x6d4782:0x48b,_0x333842:0x3f0,_0x1e2276:0x403,_0x52259c:0x49c,_0x337e85:0x411,_0x58d749:0x402,_0x4f83ec:0x45b,_0x532abf:0x4f1,_0x533d21:0x4ad,_0x2573b5:0x433,_0x369544:0x3ea,_0x5b984e:0x39c,_0x164e44:0x3c4,_0x43e6b3:0x39c,_0x177b01:0x48c,_0x5d0b53:0x503},a9_0x1b2150={_0xd5c2a8:0x63,_0x4ba098:0x5a,_0x586d5d:0x44,_0x5b9403:0x3b,_0x45a838:0x54},a9_0xd9288f={_0x24e8f5:0x342},a9_0x97dccf={_0x129a4c:0x25a},_0x52682f={};_0x52682f['YyXQb']=function(_0x4db1e3,_0x4a7b6c){return _0x4db1e3&&_0x4a7b6c;},_0x52682f[_0x45a7c5(0x414,0x362)]=function(_0x3b5f49,_0xb04c3f){return _0x3b5f49&&_0xb04c3f;},_0x52682f[_0x45a7c5(0x3d4,0x3fc)]=function(_0x108cd2,_0x143a35){return _0x108cd2<_0x143a35;},_0x52682f[_0x45a7c5(a9_0x1ad8fd._0x2ffe4a,a9_0x1ad8fd._0x573029)]=_0x45a7c5(0x42c,a9_0x1ad8fd._0x3f2392),_0x52682f['AwEIy']=function(_0xb6f37a,_0x5abed9){return _0xb6f37a===_0x5abed9;},_0x52682f[_0x45a7c5(0x475,0x4c2)]=function(_0x297343,_0x31ffa3){return _0x297343-_0x31ffa3;},_0x52682f['akOse']=function(_0x50cb86,_0x2aaa68){return _0x50cb86*_0x2aaa68;},_0x52682f[_0x45a7c5(0x44c,a9_0x1ad8fd._0xa1eb80)]=function(_0x68d22,_0x5375c2){return _0x68d22!==_0x5375c2;};function _0x45a7c5(_0x39ed2d,_0x124627){return a9_0x310250(_0x124627,_0x39ed2d-a9_0x97dccf._0x129a4c);}const _0x3dbcde=_0x52682f,_0x49b854=_0x683ca1?.[_0x45a7c5(0x4ad,0x518)]??0x751+-0x2337+0x595*0x5,_0x3e3f04=_0x683ca1?.[_0x45a7c5(a9_0x1ad8fd._0xe0dfb7,0x405)]??_0x45a7c5(0x42c,a9_0x1ad8fd._0x3d44fd),_0x4ed847=_0x683ca1?.[_0x45a7c5(0x4d5,0x4aa)+'stPerRound']??0x7*0x74+0x5ec+-0x913,_0x344df5=_0x683ca1?.[_0x45a7c5(a9_0x1ad8fd._0x3a2bb8,a9_0x1ad8fd._0x5b5e57)+_0x45a7c5(a9_0x1ad8fd._0x35a851,0x50c)+_0x45a7c5(a9_0x1ad8fd._0x1828eb,0x4a7)]??0x12e2+-0x81e9+0xd0af,_0x252f24=this['_getStaged'+'Outlines'](),_0x141cd9=_0x252f24?_0x252f24['length']:0x24ec*0x1+-0x2*0xee8+-0xb6*0xa;let _0x39093e=_0x141cd9;const _0x9aa509=new Set();let _0x3078a7=[],_0x1104c9=![];for(let _0x2a7875=-0x1e61+-0x3*-0x35f+0x1444;_0x3dbcde[_0x45a7c5(0x3d4,0x3ca)](_0x2a7875,_0x49b854);_0x2a7875++){_0x252f24&&_0x252f24[_0x45a7c5(a9_0x1ad8fd._0x369a5e,a9_0x1ad8fd._0x2cf335)](_0x39093e);let _0x9cd7ef=[..._0x3a0581];if(_0x3e3f04===_0x3dbcde['JwiES'])_0x9cd7ef[_0x45a7c5(a9_0x1ad8fd._0x3543c5,a9_0x1ad8fd._0x6d4782)]((_0x44fb98,_0x37011c)=>{const _0x2bc5d8=Array['isArray'](_0x44fb98['from'])?_0x44fb98['from'][-0x1912*-0x1+-0x229e+0x98c]:_0x44fb98[_0x326671(0xad,0x5a)],_0x2238ca=Array[_0x326671(0xab,a9_0x1b2150._0xd5c2a8)](_0x44fb98['to'])?_0x44fb98['to'][-0x1d93+0x2b9+-0x1*-0x1ada]:_0x44fb98['to'],_0x26b010=Array['isArray'](_0x37011c['from'])?_0x37011c[_0x326671(0xb3,a9_0x1b2150._0x4ba098)][-0x24ef+0xbd9*0x1+0x1916]:_0x37011c['from'],_0x1e157c=Array[_0x326671(-a9_0x1b2150._0x586d5d,0x63)](_0x37011c['to'])?_0x37011c['to'][0x1b52+0x1*-0x2151+0x5ff]:_0x37011c['to'],_0x3e0d04=PadResolver['getPadCent'+'er'](_0x2bc5d8),_0x5e7341=PadResolver[_0x326671(0x1d,0x54)+'er'](_0x2238ca),_0x3ede4c=PadResolver[_0x326671(a9_0x1b2150._0x5b9403,a9_0x1b2150._0x45a838)+'er'](_0x26b010);function _0x326671(_0x2d0339,_0x2cb4d7){return _0x45a7c5(_0x2cb4d7- -a9_0xd9288f._0x24e8f5,_0x2d0339);}const _0x245823=PadResolver['getPadCent'+'er'](_0x1e157c),_0x19417c=_0x3dbcde[_0x326671(0x85,0xb2)](_0x3e0d04,_0x5e7341)?Math['hypot'](_0x5e7341['x']-_0x3e0d04['x'],_0x5e7341['y']-_0x3e0d04['y']):-0x2635+0x86c+0x1dc9,_0x230375=_0x3dbcde['RFPTO'](_0x3ede4c,_0x245823)?Math[_0x326671(0x18c,0x172)](_0x245823['x']-_0x3ede4c['x'],_0x245823['y']-_0x3ede4c['y']):0x89+-0x23*0x1b+0x65*0x8;return _0x230375-_0x19417c;});else _0x3dbcde['AwEIy'](_0x3e3f04,_0x45a7c5(a9_0x1ad8fd._0x333842,a9_0x1ad8fd._0x1e2276))&&_0x9cd7ef[_0x45a7c5(0x3f0,a9_0x1ad8fd._0x52259c)]();const _0x282c8d=[];let _0x3b312a=!![];for(let _0x273c25=0x907*0x1+0xee8+0xb*-0x22d;_0x273c25<_0x9cd7ef[_0x45a7c5(0x48c,a9_0x1ad8fd._0x337e85)];_0x273c25++){const _0x314b01=_0x9cd7ef[_0x273c25],_0x21c2ae=_0x3a0581[_0x45a7c5(a9_0x1ad8fd._0x58d749,0x3b9)](_0x314b01);if(_0x9aa509['has'](_0x21c2ae))continue;const _0x3b6b84=_0x314b01['options']||{},_0x2a76e3={..._0x3b6b84,'viaCost':_0x3b6b84[_0x45a7c5(a9_0x1ad8fd._0x4f83ec,a9_0x1ad8fd._0x532abf)]!==undefined?Math['max'](0x118d+0x10fe+-0x228b*0x1,_0x3dbcde['qtRmt'](_0x3b6b84['viaCost'],_0x3dbcde['akOse'](_0x4ed847,_0x2a7875))):undefined,'maxIterations':_0x3dbcde[_0x45a7c5(0x44c,a9_0x1ad8fd._0x533d21)](_0x3b6b84[_0x45a7c5(a9_0x1ad8fd._0x2573b5,0x433)+'ons'],undefined)?_0x3b6b84[_0x45a7c5(a9_0x1ad8fd._0x2573b5,0x4ae)+_0x45a7c5(a9_0x1ad8fd._0x369544,0x393)]+_0x3dbcde['akOse'](_0x344df5,_0x2a7875):undefined},_0xf019a7={..._0x2a76e3};_0xf019a7[_0x45a7c5(a9_0x1ad8fd._0x5b984e,a9_0x1ad8fd._0x164e44)]=_0x314b01[_0x45a7c5(a9_0x1ad8fd._0x43e6b3,0x428)],_0xf019a7['to']=_0x314b01['to'];const _0x3fba4e=await this['autoroute'](_0xf019a7);_0x282c8d[_0x45a7c5(0x41a,0x4cc)](_0x3fba4e);if(!_0x3fba4e['success']){_0x3b312a=![];break;}else _0x252f24&&(_0x39093e=_0x252f24[_0x45a7c5(a9_0x1ad8fd._0x177b01,a9_0x1ad8fd._0x5d0b53)]),_0x9aa509['add'](_0x21c2ae);}if(_0x3b312a){_0x3078a7=_0x282c8d,_0x1104c9=!![];break;}}const _0x10fec0={};return _0x10fec0[_0x45a7c5(0x4be,0x508)]=_0x3078a7,_0x10fec0['success']=_0x1104c9,_0x10fec0['rounds']=_0x49b854,_0x10fec0;}[a9_0x310250(0x1db,0x1ef)+'oardBounds'](_0x119454){const a9_0x4c6c0a={_0xb67578:0x240,_0x11fe8e:0x247,_0x2084cc:0x2aa,_0x1372dc:0x319},_0x4cfce5={'lkdSd':function(_0x3e3bc0,_0xd2b66c,_0x3859c3,_0x3cfcde){return _0x3e3bc0(_0xd2b66c,_0x3859c3,_0x3cfcde);},'WKBml':function(_0x4f495d,_0x1c7728,_0x3118b0){return _0x4f495d(_0x1c7728,_0x3118b0);}};function _0x205684(_0x5e3ce8,_0x414497){return a9_0x310250(_0x414497,_0x5e3ce8-0xea);}const _0x4c7075=[];return _0x4cfce5[_0x205684(a9_0x4c6c0a._0xb67578,a9_0x4c6c0a._0x11fe8e)](__classPrivateFieldGet,this,_PCB_components,'f')&&_0x4c7075[_0x205684(a9_0x4c6c0a._0x2084cc,0x2ac)](...__classPrivateFieldGet(this,_PCB_components,'f')),__classPrivateFieldGet(this,_PCB_stagedComponents,'f')&&_0x4c7075[_0x205684(a9_0x4c6c0a._0x2084cc,a9_0x4c6c0a._0x1372dc)](...__classPrivateFieldGet(this,_PCB_stagedComponents,'f')),_0x119454&&_0x4c7075[_0x205684(0x2aa,0x2fd)](..._0x119454),_0x4cfce5['WKBml'](calculateBoardBounds,_0x4c7075,this['outlines']);}[a9_0x310250(0x1e0,0x22a)+a9_0x310250(0x1df,0x238)+'th'](_0x808abe,_0x9435e5,_0x3cb105,_0x20272d){const a9_0xabf574={_0x326a15:0x2c0};function _0x5dfef9(_0x12843e,_0x4de649){return a9_0x310250(_0x4de649,_0x12843e-0x1ae);}const _0x27c102={'jPfyx':function(_0x323f71,_0x21d9d5,_0x5c9f91,_0x4ce149,_0x1a2947){return _0x323f71(_0x21d9d5,_0x5c9f91,_0x4ce149,_0x1a2947);}};return _0x27c102[_0x5dfef9(0x352,a9_0xabf574._0x326a15)](calculateMinTraceWidth,_0x808abe,_0x9435e5,_0x3cb105,_0x20272d);}[a9_0x310250(0x152,0x188)](..._0x41b264){const a9_0x1f1e93={_0x28c92b:0x14a,_0x3a400c:0x1ff};function _0x2214c2(_0x1936ee,_0x19290f){return a9_0x310250(_0x19290f,_0x1936ee- -0x22);}return this[_0x2214c2(a9_0x1f1e93._0x28c92b,0x9f)][_0x2214c2(0x166,a9_0x1f1e93._0x3a400c)](..._0x41b264);}['named'](_0x5d4faf){const a9_0x49a23e={_0x5a9876:0x585},a9_0x206c3d={_0x48d3fe:0x309};function _0x56eca4(_0xe69130,_0x3e7467){return a9_0x310250(_0xe69130,_0x3e7467-a9_0x206c3d._0x48d3fe);}return this['Schematic'][_0x56eca4(0x57a,a9_0x49a23e._0x5a9876)](_0x5d4faf),this;}['bom'](_0x4f4045){const a9_0x23cb14={_0x1540a9:0x293,_0x316d16:0x20c};function _0x59256f(_0x39874a,_0x30bcab){return a9_0x310250(_0x39874a,_0x30bcab-0xa0);}this[_0x59256f(a9_0x23cb14._0x1540a9,a9_0x23cb14._0x316d16)]&&this[_0x59256f(0x247,a9_0x23cb14._0x316d16)]['bom'](_0x4f4045);}[a9_0x310250(0x2ab,0x22f)](){const a9_0x1d0bd9={_0x1fafae:0xac,_0x4ba2bd:0x14a};function _0x2e4de2(_0x1180c6,_0x10f370){return a9_0x310250(_0x10f370,_0x1180c6- -0x183);}this['Schematic']&&this[_0x2e4de2(-0x17,0x6b)][_0x2e4de2(a9_0x1d0bd9._0x1fafae,a9_0x1d0bd9._0x4ba2bd)]();}['add'](..._0x5ddde5){const a9_0x4d0b2a={_0xdaa2e2:0x5f,_0x2da8c5:0x2};function _0x1031e8(_0x29df25,_0x3ef6b8){return a9_0x310250(_0x29df25,_0x3ef6b8- -0x16e);}this[_0x1031e8(a9_0x4d0b2a._0xdaa2e2,-a9_0x4d0b2a._0x2da8c5)]&&this['Schematic']['add'](..._0x5ddde5);}['_getTrackD'+'ata'](_0xd2664f){const a9_0xf445e7={_0x13d0a3:0x199,_0x51d0c8:0x1ca,_0x15aac1:0x19c,_0x1ac3fe:0x212,_0x481a43:0x250,_0x271c4e:0x90},a9_0x14c692={_0x3999e1:0x39},_0x373d0e={'hFUms':function(_0x3aaacd,_0x363d8a,_0x551822,_0x28c0c9){return _0x3aaacd(_0x363d8a,_0x551822,_0x28c0c9);},'XRWVk':function(_0x5c1743,_0x502c14){return _0x5c1743===_0x502c14;},'RKcQG':function(_0x14bba0,_0x473a5b){return _0x14bba0===_0x473a5b;}};for(const _0x35e0cf of _0x373d0e['hFUms'](__classPrivateFieldGet,this,_PCB_stagedOutlines,'f')){if(_0x373d0e[_0x1b08f7(a9_0xf445e7._0x13d0a3,0x253)](_0x35e0cf[_0x1b08f7(0x1e5,a9_0xf445e7._0x51d0c8)],_0xd2664f)&&_0x373d0e[_0x1b08f7(0x222,a9_0xf445e7._0x15aac1)](_0x35e0cf[_0x1b08f7(a9_0xf445e7._0x1ac3fe,a9_0xf445e7._0x481a43)][_0x1b08f7(0x142,0x1f9)],0x1163*0x1+-0x22f3+-0x1*-0x1191)&&_0x373d0e['XRWVk'](_0x35e0cf['elements'][0x7ea+-0x1bc0+0x1*0x13d6]['type'],_0x1b08f7(a9_0xf445e7._0x271c4e,0x118)))return _0x35e0cf['elements'][-0x2*-0xd39+0xf*-0x55+-0x1*0x1577];}function _0