@processandtools/rp-article-designer 1.0.0 → 1.0.2

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.
Binary file
Binary file
Binary file
Binary file
Binary file
package/dist/index.cjs CHANGED
@@ -1,8 +1 @@
1
- "use strict";var Be=Object.defineProperty;var He=(e,t,r)=>t in e?Be(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var L=(e,t,r)=>He(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react/jsx-runtime"),b=require("react"),be=require("@react-three/drei"),R=b.createContext(void 0);function _e({data:e,children:t,names:r}){const s=e,[i,n]=b.useState(s),[a,o]=b.useState(null),[l,h]=b.useState(null),f=b.useCallback(E=>({anglElems:i.anglelem.filter(N=>N.NAME===E),anglZones:i.anglzone.filter(N=>N.NAME===E),anglPrims:i.anglprim.filter(N=>N.NAME===E),anglClies:i.anglclie.filter(N=>N.NAME===E),anglGrtxs:i.anglgrtx.filter(N=>N.NAME===E)}),[i]),{anglElems:m,anglZones:p,anglPrims:x,anglClies:y,anglGrtxs:u}=b.useMemo(()=>r&&r.length>0?{anglElems:i.anglelem.filter(E=>r.includes(E.NAME)),anglZones:i.anglzone.filter(E=>r.includes(E.NAME)),anglPrims:i.anglprim.filter(E=>r.includes(E.NAME)),anglClies:i.anglclie.filter(E=>r.includes(E.NAME)),anglGrtxs:i.anglgrtx.filter(E=>r.includes(E.NAME))}:{anglElems:i.anglelem,anglZones:i.anglzone,anglPrims:i.anglprim,anglClies:i.anglclie,anglGrtxs:i.anglgrtx},[i,r]),C={anglElems:m,anglZones:p,anglPrims:x,anglClies:y,anglGrtxs:u,selectedElem:a,setSelectedElem:o,hoveredElem:l,setHoveredElem:h,updateAnglPrim:(E,N,_)=>{n(A=>({...A,anglprim:A.anglprim.map(w=>w.NAME===E?{...w,[N]:_}:w)}))},updateAnglElem:(E,N,_,A)=>{n(w=>({...w,anglelem:w.anglelem.map(k=>k.TREEID===N&&k.NAME===E?{...k,[_]:A}:k)}))},updateAnglZone:(E,N,_,A)=>{n(w=>({...w,anglzone:w.anglzone.map(k=>k.TREEID===N&&k.NAME===E?{...k,[_]:A}:k)}))},updateAnglClie:(E,N,_,A,w)=>{n(k=>({...k,anglclie:k.anglclie.map(O=>O.TREEID===N&&O.TAGNAME===_&&O.DATATYPE===w&&O.NAME===E?{...O,TAGVALUE:A,DATE_LASTCHANGE:new Date().toISOString()}:O)}))},updateAnglGrtx:(E,N,_,A)=>{n(w=>({...w,anglgrtx:w.anglgrtx.map(k=>k.TREEID===N&&k.NUM===_&&k.NAME===E?{...k,TEXT:A,DATE_LASTCHANGE:new Date().toISOString()}:k)}))},getArticleData:f,allData:i};return c.jsx(R.Provider,{value:C,children:t})}const ue=b.createContext(null);function he({children:e,articleName:t,dimensionOverrides:r}){const s={articleName:t,dimensionOverrides:r};return c.jsx(ue.Provider,{value:s,children:e})}const fe=b.createContext(void 0);var P=(e=>(e[e.Surface=3]="Surface",e[e.Material=4]="Material",e[e.Numeric=100]="Numeric",e[e.Text=120]="Text",e))(P||{});function ce(e){return new Map(e.map(t=>[t.NAME,t]))}function ne(e,t,r=new Set){const s=t.get(e);if(!s)return;if(r.has(e)){console.error(`Circular dependency: ${[...r,e].join(" -> ")}`);return}const i=s.WERT;if(i.startsWith("$")&&s.TYP!=P.Text){const a=i.slice(1);return r.add(e),ne(a,t,r)}const n=Number(i);return isNaN(n)?i:n}function ke(e,t,r){const s=r.get(e);if(!s)return console.warn(`Variable ${e} not found`),r;const i=new Map(r);return i.set(e,{...s,WERT:String(t)}),i}function me(e,t){return e.replace(/\$([A-Za-z_][A-Za-z0-9_]*)/g,(r,s)=>{const i=ne(s,t);return i!==void 0?String(i):r})}function pe(e){return/\$[A-Za-z_][A-Za-z0-9_]*/g.test(e)}function Ue(e){const t=e.matchAll(/\$([A-Za-z_][A-Za-z0-9_]*)/g);return Array.from(t,r=>r[1])}const Ze=Object.freeze(Object.defineProperty({__proto__:null,createVariableTree:ce,extractVariableNames:Ue,getValue:ne,hasVariables:pe,resolveString:me,setValue:ke},Symbol.toStringTag,{value:"Module"}));function Ae({children:e,imosVariables:t}){const[r,s]=b.useState(()=>ce(t));b.useEffect(()=>{s(ce(t))},[t]);const i=b.useCallback((a,o)=>{s(l=>ke(a,o,l))},[]),n={tree:r,setValue:i};return c.jsx(fe.Provider,{value:n,children:e})}const de=b.createContext(null),Ne=e=>{const t=Number(e);return isNaN(t)?null:t},Z=e=>e==null?"":String(e),j=(e,t,r)=>{const s=Ne(e),i=Ne(t);return s===null||i===null?!1:r(s,i)},U=(e,t,r)=>e==null||t==null?!1:r(Z(e),Z(t)),Ke={"=":(e,t)=>e==null||t==null?e===t:Z(e).trim()===Z(t).trim(),"!=":(e,t)=>e==null||t==null?e!==t:Z(e).trim()!==Z(t).trim(),">":(e,t)=>j(e,t,(r,s)=>r>s),"<":(e,t)=>j(e,t,(r,s)=>r<s),">=":(e,t)=>j(e,t,(r,s)=>r>=s),"<=":(e,t)=>j(e,t,(r,s)=>r<=s),"&gt;":(e,t)=>j(e,t,(r,s)=>r>s),"&gt;=":(e,t)=>j(e,t,(r,s)=>r>=s),"&lt;":(e,t)=>j(e,t,(r,s)=>r<s),"&lt;=":(e,t)=>j(e,t,(r,s)=>r<=s),B:(e,t)=>U(e,t,(r,s)=>r.startsWith(s)),"!B":(e,t)=>U(e,t,(r,s)=>!r.startsWith(s)),E:(e,t)=>U(e,t,(r,s)=>r.endsWith(s)),"!E":(e,t)=>U(e,t,(r,s)=>!r.endsWith(s)),C:(e,t)=>U(e,t,(r,s)=>r.includes(s)),"!C":(e,t)=>U(e,t,(r,s)=>!r.includes(s))},Ye={"Zusatzfilter 3":"filter3","Zusatzfilter 4":"filter4"};function De(e,t={}){const{variableTree:r,dataType:s,silent:i=!1,allowFunctions:n=!0}=t,a=/^(.+?)\s*(mm|cm|m|in|ft|px|pt|%|deg|rad)$/i,o={value:void 0,original:e,resolved:e,hadVariables:!1,wasEvaluated:!1};try{let l=e.trim(),h;if(a.test(l)){const f=l.match(a);f&&(l=f[1].trim(),h=f[2])}r&&pe(l)&&(o.hadVariables=!0,l=me(l,r),o.resolved=l),Ce(l)?(o.wasEvaluated=!0,o.value=we(l,n)):ge(l)?(o.wasEvaluated=!0,o.value=xe(l,n)):o.value=Xe(l,s)}catch(l){o.error=l instanceof Error?l.message:String(l),i||console.error(`[ExpressionResolver] Failed to resolve: "${e}"`,l),o.value=e}return o}function re(e,t={}){return De(e,t).value}function Ce(e){return!e||typeof e!="string"?!1:/^\s*IF\s*\(/i.test(e.trim())}function we(e,t=!0){const s=e.trim().match(/^IF\s*\((.*)\)\s*$/i);if(!s)throw new Error(`Invalid IF statement: ${e}`);const i=s[1],n=We(i);if(n.length!==3)throw new Error(`IF statement must have exactly 3 parts: IF(condition, trueValue, falseValue). Got: ${n.length} parts`);const[a,o,l]=n,f=ee(a.trim(),t)?o.trim():l.trim();if(Ce(f))return we(f,t);if(ge(f))return xe(f,t);{const m=Number(f);return isNaN(m)?f:m}}function We(e){const t=[];let r="",s=0;for(let i=0;i<e.length;i++){const n=e[i];n==="("?(s++,r+=n):n===")"?(s--,r+=n):n===","&&s===0?(t.push(r),r=""):r+=n}return r&&t.push(r),t}function ee(e,t){if(/\bAND\b/i.test(e))return e.split(/\bAND\b/i).every(h=>ee(h.trim(),t));if(/\bOR\b/i.test(e))return e.split(/\bOR\b/i).some(h=>ee(h.trim(),t));if(/^\s*NOT\s+/i.test(e)){const l=e.replace(/^\s*NOT\s+/i,"").trim();return!ee(l,t)}const r=e.match(/(.+?)(<=|>=|!=|<>|=|<|>)(.+)/);if(!r)throw new Error(`Invalid condition: ${e}`);const[,s,i,n]=r,a=Me(s.trim(),t),o=Me(n.trim(),t);switch(i){case"=":return a===o;case"!=":case"<>":return a!==o;case"<":return a<o;case">":return a>o;case"<=":return a<=o;case">=":return a>=o;default:throw new Error(`Unknown operator: ${i}`)}}function Me(e,t){if(e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'"))return e.slice(1,-1);if(ge(e))return xe(e,t);const r=Number(e);return isNaN(r)?e:r}function ge(e){if(!e||typeof e!="string")return!1;const t=e.trim();return/[+\-*/()]/.test(t)?/^[\d\s+\-*/().,a-z]+$/i.test(t):!1}const oe=new Map;function xe(e,t=!0){const r=e.trim(),s=`${r}:${t}`;if(oe.has(s))return oe.get(s);let i=r.replace(/\s+/g,"");if(t&&(i=i.replace(/round\(/g,"Math.round(").replace(/floor\(/g,"Math.floor(").replace(/ceil\(/g,"Math.ceil(").replace(/abs\(/g,"Math.abs(").replace(/min\(/g,"Math.min(").replace(/max\(/g,"Math.max(").replace(/pow\(/g,"Math.pow(").replace(/sqrt\(/g,"Math.sqrt(")),!(t?/^[\d+\-*/().,a-zA-Z]+$/:/^[\d+\-*/().]+$/).test(i))throw new Error(`Expression contains invalid characters: ${e}`);if(!i)throw new Error("Empty expression");try{const a=Function(`'use strict'; return (${i})`)();if(typeof a!="number"||isNaN(a))throw new Error(`Expression did not evaluate to a number: ${e}`);return oe.set(s,a),a}catch(a){throw new Error(`Failed to evaluate expression: ${e} - ${a}`)}}function Xe(e,t){if(!t){const r=Number(e);return isNaN(r)?e:r}switch(t.toUpperCase()){case"FL":return parseFloat(e);case"IN":return parseInt(e,10);case"CI":case"CS":case"ST":return e;case"DA":return new Date(e).toISOString();default:const r=Number(e);return isNaN(r)?e:r}}const qe=e=>Ye[e]||e,K=class K{};L(K,"evaluateTree",(t,r,s)=>t?t.roots.every(i=>K.evaluateNode(i,r,s)):!1),L(K,"evaluateNode",(t,r,s)=>{if(!t)return!1;if(t.kind==="comparison"){let i=t.data.LEFTVALUE;const n=qe(t.data.LEFTVALUE);r[n]!==void 0?i=r[n]:i=re(t.data.LEFTVALUE,{variableTree:s,dataType:t.data.DATATYPE,silent:!0});const a=re(t.data.RIGHTVALUE,{variableTree:s,dataType:t.data.DATATYPE,silent:!0});return Ke[t.data.COMPARISONTYPE](i,a)}if(t.kind==="operation"){const i=t.children.map(n=>K.evaluateNode(n,r,s));switch(t.data.OPSTRING){case"AND":return i.every(Boolean);case"OR":return i.some(Boolean);case"NOT":return!i.every(Boolean);case"NOT OR":return!i.some(Boolean);default:return!1}}return!1});let se=K;class Te{static evaluate(t,r,s){const i=t.nodes.find(n=>n.conditionId===0||n.conditionTree===null);for(const n of t.nodes){if(n.conditionId===0||n.conditionTree===null)continue;if(se.evaluateTree(n.conditionTree,r,s))return{lindiv:n.lindiv,nodeNum:n.nodeNum,matched:!0,isDefault:!1,descriptorType:t.descriptor.DESC_TYPE}}if(i)return{lindiv:i.lindiv,nodeNum:i.nodeNum,matched:!1,isDefault:!0,descriptorType:t.descriptor.DESC_TYPE};throw new Error("No matching node found and no default node exists")}static findAllNonDefaultMatches(t,r,s){const i=[];for(const n of t.nodes){if(n.conditionId===0||n.conditionTree===null)continue;se.evaluateTree(n.conditionTree,r,s)&&i.push(n)}return i}}class Je{constructor(t,r){L(this,"descriptors");L(this,"variableTree");this.descriptors=new Map(t.map(s=>[s.descriptor.NAME,s])),this.variableTree=r}evaluate(t,r){const s=this.getDescriptor(t);if(!s)throw new Error(`Descriptor not found: ${t}`);return Te.evaluate(s,r,this.variableTree)}getDescriptor(t){return this.descriptors.get(t)}hasDescriptor(t){return this.descriptors.has(t)}getDescriptorNames(){return Array.from(this.descriptors.keys())}getDescriptorsByType(t){return Array.from(this.descriptors.values()).filter(r=>r.descriptor.DESC_TYPE===t)}findAllMatches(t,r){const s=this.getDescriptor(t);if(!s)throw new Error(`Descriptor not found: ${t}`);return Te.findAllNonDefaultMatches(s,r,this.variableTree)}getStats(){const t={};for(const r of this.descriptors.values()){const s=r.descriptor.DESC_TYPE;t[s]=(t[s]||0)+1}return{total:this.descriptors.size,byType:t,names:this.getDescriptorNames()}}}function G(){const e=b.useContext(fe);if(!e)throw new Error("useVariables must be used within a VariableProvider");const{tree:t,setValue:r}=e,s=b.useMemo(()=>a=>ne(a,t),[t]),i=b.useMemo(()=>a=>me(a,t),[t]),n=b.useMemo(()=>a=>pe(a),[]);return{tree:t,getValue:s,resolveString:i,hasVariables:n,setValue:r}}function Le({children:e,descriptorData:t}){const r=G(),s=b.useMemo(()=>new Je(t,r.tree),[t,r]);return c.jsx(de.Provider,{value:s,children:e})}var M=(e=>(e._2D_TOP="2D_TOP",e._2D_FRONT="2D_FRONT",e._3D="3D",e))(M||{});const le=0,Qe=1,Oe=e=>e+".0",Pe=e=>e+".1",Ve=e=>e+".2",Re=e=>e+".3",Ee=e=>e.substring(0,e.lastIndexOf(".")),et=e=>{const t=Ee(e),s=(je(e)+3)%4;return`${t}.${s}`},tt=e=>{const t=Ee(e),s=(je(e)+1)%4;return`${t}.${s}`},je=e=>parseInt(e.substring(e.lastIndexOf(".")+1)),Y={IAC_THICKNESS:"IAC_THICKNESS",IAC_BOTTOMSHELFTHICKNESS:"IAC_BOTTOMSHELFTHICKNESS",IAC_TOPSHELFTHICKNESS:"IAC_TOPSHELFTHICKNESS"},S=1;function W(){const e=b.useContext(R);if(e===void 0)throw new Error("useData must be used within a DataProvider");return e}function X(){const e=b.useContext(ue);if(!e)throw new Error("useArticle must be used within an ArticleProvider");return e}function te(e,t,r){const{getArticleData:s}=W(),{articleName:i}=X(),{anglClies:n}=s(i),a=n.find(l=>l.TREEID===e&&l.DATATYPE===r&&l.TAGNAME===t);return a?{thickness:Number(a.TAGVALUE)}:null}function rt(e){const{getArticleData:t}=W(),{resolveString:r}=G(),{articleName:s}=X(),i=t(s).anglGrtxs;if(!i)return null;const n=i.filter(o=>o.TREEID===e),a=new Map;return n.map(o=>a.set(`AD zone info0${o.NUM+1}`,r(o.TEXT))),{zoneInfo:a}}function ae(e){const{getArticleData:t}=W(),{articleName:r}=X(),{anglZones:s}=t(r),i=s.find(a=>a.TREEID===e),n=s.filter(a=>a.TREEID.substring(0,a.TREEID.lastIndexOf("."))===e);return n.sort((a,o)=>a.TREEID.localeCompare(o.TREEID,void 0,{numeric:!0})),i?{currentZone:i,children:n,get topShelfCP(){return i?.TOPSHELF},get bottomShelfCP(){return i?.BOTSHELF},zoneInfo(){return rt(e)?.zoneInfo},getClieThk(a,o){return this.topShelfCP===""?0:te(a,o,Qe)?.thickness||0},get topShelfThk(){return this.getClieThk(e,Y.IAC_TOPSHELFTHICKNESS)},get bottomShelfThk(){return this.getClieThk(e,Y.IAC_BOTTOMSHELFTHICKNESS)},get dividerThk(){return this.getClieThk(e,Y.IAC_THICKNESS)}}:null}function Q(e){const{getArticleData:t}=W(),{articleName:r}=X(),{resolveString:s}=G(),{anglElems:i}=t(r),n=i.find(T=>T.TREEID===e),a=Ee(e),o=ae(a);if(!n)return null;const l=n.CPNAME===""?0:te(e,Y.IAC_THICKNESS,le)?.thickness||0,h=te(tt(e),Y.IAC_THICKNESS,le)?.thickness||0,f=te(et(e),Y.IAC_THICKNESS,le)?.thickness||0,m=n.CPNAME===""?0:n.INSETFOR!==""?re(s(n.INSETFOR)):Number(n.INSET),p=(typeof m=="string"?0:m)||0,x=n.MANINFO||"black",y=n.CPNAME,u=o?.topShelfThk||0,d=o?.bottomShelfThk||0,g={start:Number(n.STARTOFFS)||0,end:Number(n.ENDOFFS)||0,top:Number(n.TOPOFFS)||0,bottom:Number(n.BOTOFFS)||0},I={start:n.STARTTRIM,end:n.ENDTRIM,top:n.TOPTRIM,bottom:n.BOTTRIM},v={top:I.top==="S"?u:0,bottom:I.bottom==="S"?d:0};return{TREEID:e,thk:l,nxtThk:h,prvThk:f,inset:p,color:x,CPNAME:y,topThk:u,bottomThk:d,oversize:g,trim:I,elmTrimThk:v}}var D=class extends Error{constructor(e){super(`Evaluation Error: ${e}`),this.name="EvaluationError"}},z,st=(z=class{constructor(){L(this,"cache",new Map);L(this,"source","");L(this,"tokens",[]);L(this,"start",0);L(this,"current",0);L(this,"errors",[])}reportError(t){this.errors.push(t)}scan(t){if(this.cache.has(t)){const r=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,r),r}try{this.source=t;const r=this.preformScan();if(this.cache.set(this.source,r),this.cache.size>3){const s=this.cache.keys().next().value;this.cache.delete(s)}return r}catch(r){throw console.error(r),new Error(r instanceof Error?r.message:String(r))}}preformScan(){this.resetState();try{if(this.source.includes("<")||this.source.includes(">"))throw new Error("Angle brackets are not allowed in the input string");if(this.source.length===0)throw new Error("Empty input string");for(this.start=0,this.current=0,this.tokens=[],this.start===0&&this.addToken("LEFT_ANGLE_BRACKET","<");!this.isAtEnd();){this.start=this.current;const t=this.peek();switch(t){case":":this.addToken("RIGHT_ANGLE_BRACKET",">"),this.addToken("LEFT_ANGLE_BRACKET","<"),this.advance();break;case" ":case"\r":case" ":case`
2
- `:this.advance();break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case".":this.scanNumber();break;case"$":this.scanVariable();break;case"+":case"-":case"*":case"/":this.addToken("OPERATOR",t),this.advance();break;case"(":this.addToken("PAREN_OPEN","("),this.advance();break;case")":this.addToken("PAREN_CLOSE",")"),this.advance();break;case"{":this.current!=0&&this.tokens[this.tokens.length-1].type!="OPERATOR"&&this.addToken("OPERATOR","*"),this.addToken("BRACE_OPEN","{"),this.addToken("LEFT_ANGLE_BRACKET","<"),this.advance();break;case"}":this.addToken("RIGHT_ANGLE_BRACKET",">"),this.addToken("BRACE_CLOSE","}"),this.advance();break;case"[":this.addToken("OPERATOR","~"),this.addToken("BRACKET_OPEN","["),this.advance();break;case"]":this.addToken("BRACKET_CLOSE","]"),this.advance();break;case"m":this.peekNext()==="m"?this.scanMm():this.scanIdentifierOrFunction();break;default:this.isAlpha(t)?this.scanIdentifierOrFunction():this.reportError(`Unexpected character: ${t} at position: ${this.current}`)}}if(this.addToken("RIGHT_ANGLE_BRACKET",">"),this.addToken("EOF",""),this.errors.length>0)throw new Error(this.errors.join(`,
3
- `));return this.tokens}catch(t){throw new Error(t instanceof Error?t.message:String(t))}}isAtEnd(){return this.current>=this.source.length}advance(){return this.source.charAt(this.current++)}peek(){return this.isAtEnd()?"\0":this.source.charAt(this.current)}peekNext(){return this.current+1>=this.source.length?"\0":this.source.charAt(this.current+1)}addToken(t,r){this.tokens.push({type:t,lexeme:r||(t?this.source.substring(this.start,this.current):""),position:this.start})}isDigit(t){return/^[0-9]$/.test(t)}isAlpha(t){return/^[a-zA-Z]$/.test(t)}scanNumber(){for(;this.isDigit(this.peek());)this.advance();if(this.peek()===".")for(this.advance(),this.isDigit(this.peek())||this.reportError("Expected digit after decimal point at position: "+this.current);this.isDigit(this.peek());)this.advance();this.addToken("NUMBER")}scanVariable(){for(this.advance();/[a-zA-Z0-9_]/.test(this.peek());)this.advance();const t=this.source.substring(this.start+1,this.current);if(t.endsWith("mm")){const r=t.substring(0,t.length-2);r&&r.length>0?(this.addToken("VARIABLE",r),this.addToken("UNIT","mm")):this.reportError("Variable name cannot be empty or $mm")}else this.addToken("VARIABLE",t)}scanMm(){this.advance(),this.advance(),this.addToken("UNIT","mm")}scanIdentifierOrFunction(){const t=["X","Y","n"];for(;this.isAlpha(this.peek());)this.advance();const r=this.source.substring(this.start,this.current),s=z.MATHEMATICAL_FUNCTIONS[r.toLocaleLowerCase()];s!=null?this.addToken(s,r):t.includes(r)?this.addToken("SPECIAL_VARIABLE",r):this.reportError(`Unknown identifier: ${r} at position: ${this.current}`)}resetState(){this.tokens=[],this.start=0,this.current=0,this.errors=[]}},L(z,"MATHEMATICAL_FUNCTIONS",{abs:"FUNCTION",acos:"FUNCTION",asin:"FUNCTION",atan:"FUNCTION",bog2deg:"FUNCTION",cos:"FUNCTION",deg2bog:"FUNCTION",in2mm:"FUNCTION",ln:"FUNCTION",log:"FUNCTION",log10:"FUNCTION",max:"FUNCTION",maxunder:"FUNCTION",mm2in:"FUNCTION",nextto:"FUNCTION",pi:"FUNCTION",pow:"FUNCTION",round:"FUNCTION",sin:"FUNCTION",sqr:"FUNCTION",tab:"FUNCTION",tan:"FUNCTION"}),z),it=class{constructor(){L(this,"cache",new Map);L(this,"tokens",[]);L(this,"current",0);L(this,"resetCurrent",()=>{this.current=0})}parse(e){if(this.cache.has(e)){const t=this.cache.get(e);return this.cache.delete(e),this.cache.set(e,t),t}try{this.tokens=e;const t=this.performParse(e);if(this.cache.set(e,t),this.cache.size>3){const r=this.cache.keys().next().value;this.cache.delete(r)}return t}catch(t){throw new Error(t instanceof Error?t.message:String(t))}}performParse(e){if(this.resetCurrent(),this.tokens.length===0)throw new Error("No tokens to parse.");try{return this.expression()}catch(t){throw new Error(t instanceof Error?t.message:String(t))}}checkMillimeterSuffix(){if(this.isAtEnd())return!1;const e=this.peek();return e.type==="UNIT"&&e.lexeme==="mm"}consumeMillimeterSuffix(){return this.checkMillimeterSuffix()?(this.advance(),!0):!1}sections(){const e=[];if(!this.check("LEFT_ANGLE_BRACKET"))return this.expression();for(;this.check("LEFT_ANGLE_BRACKET");){this.advance();let t=this.expression();this.consume("RIGHT_ANGLE_BRACKET","Expected '>' after section expression."),e.push({type:"Section",nodes:t,hasMillimeterSuffix:this.consumeMillimeterSuffix()})}if(e.length===1){const t=e[0];return t.type==="Section"&&t.nodes.type==="Section"?t.nodes:t}return{type:"Sections",sections:e}}expression(){try{let e=this.term();for(;!this.isAtEnd()&&this.check("OPERATOR")&&["+","-"].includes(this.peek().lexeme);){this.advance();const t=this.previous().lexeme,r=this.term();e={type:"BinaryExpression",left:e,operator:t,right:r}}return e}catch(e){throw new Error(`Failed to parse expression: ${e.message}`)}}term(){try{let e=this.factor();for(;!this.isAtEnd()&&this.check("OPERATOR")&&["*","/","~"].includes(this.peek().lexeme);){this.advance();const t=this.previous().lexeme,r=this.factor();if(r.type==="SpecialVariable"&&r.name==="n")throw new Error('Invalid usage: "n" cannot appear on the right-hand side of an operator');e={type:"BinaryExpression",left:e,operator:t,right:r}}return e}catch(e){throw new Error(`Failed to parse term: ${e.message}`)}}factor(){try{if(this.check("OPERATOR")&&["-","+"].includes(this.peek().lexeme)){this.advance();const e=this.previous().lexeme,t=this.factor();return{type:"UnaryExpression",operator:e,right:t}}return this.primary()}catch(e){throw new Error(`Failed to parse factor: ${e.message}`)}}primary(){try{if(this.check("NUMBER"))return this.advance(),{type:"NumberLiteral",value:parseFloat(this.previous().lexeme),hasMillimeterSuffix:this.consumeMillimeterSuffix()};if(this.check("VARIABLE"))return this.advance(),{type:"Variable",name:this.previous().lexeme,hasMillimeterSuffix:this.consumeMillimeterSuffix()};if(this.check("SPECIAL_VARIABLE"))return this.advance(),{type:"SpecialVariable",name:this.previous().lexeme,hasMillimeterSuffix:this.previous().lexeme==="n"};if(this.check("FUNCTION")){this.advance();const e=this.previous().lexeme;this.consume("PAREN_OPEN",`Expected '(' after function name '${e}'.`);const t=this.expression();return this.consume("PAREN_CLOSE","Expected ')' after function arguments."),{type:"FunctionCall",name:e,arg:t,hasMillimeterSuffix:this.consumeMillimeterSuffix()}}if(this.check("PAREN_OPEN")){this.advance();const e=this.expression();if(!e)throw new Error("Expected expression inside parentheses.");return this.consume("PAREN_CLOSE","Expected ')' after expression."),{type:"Grouping",expression:e,hasMillimeterSuffix:this.consumeMillimeterSuffix()}}if(this.check("PAREN_CLOSE"))throw new Error("Unexpected ')' without a matching '('.");if(this.check("BRACE_OPEN")){this.advance();let e=this.sections();return this.consume("BRACE_CLOSE","Expected '}' after expression."),e.type==="Section"&&e.nodes.type==="Section"&&(e=e.nodes),{type:"Repeated",toRepeat:e,hasMillimeterSuffix:this.consumeMillimeterSuffix()}}if(this.check("LEFT_ANGLE_BRACKET"))return this.sections();throw new Error(`Unexpected token: ${this.peek().lexeme}`)}catch(e){throw new Error(`Failed to parse primary: ${e.message}`)}}check(e){return this.isAtEnd()?!1:this.peek().type===e}advance(){return this.isAtEnd()||this.current++,this.previous()}consume(e,t){if(this.check(e))return this.advance();throw new Error(t)}isAtEnd(){return this.current>=this.tokens.length}peek(){return this.tokens[this.current]}previous(){return this.tokens[this.current-1]}},ye=e=>e.type==="SpecialVariable"&&e.name==="n";function nt(e,t){if(e.right.type==="SpecialVariable"&&e.right.name==="n")return new D("Cannot have n in the right side of an expression");const r=ye(e.left)?e.left:this.evaluate(e.left),s=ye(e.right)?e.right:this.evaluate(e.right);if(r instanceof D)return r;if(s instanceof D)return s;const i=r.type==="NumberLiteral"&&s.type==="NumberLiteral",n=i?r.hasMillimeterSuffix===s.hasMillimeterSuffix:!1,a=o=>o.type==="Repeated";switch(e.operator){case"+":return i&&n&&t?.isInsideGroup==!1?{type:"NumberLiteral",value:r.value+s.value,hasMillimeterSuffix:r.hasMillimeterSuffix===!0||s.hasMillimeterSuffix===!0,spreadMm:r.spreadMm||s.spreadMm}:i&&t?.isInsideGroup==!0?{type:"NumberLiteral",value:r.value+s.value,spreadMm:r.hasMillimeterSuffix||s.hasMillimeterSuffix}:{type:"BinaryExpression",operator:"+",left:r,right:s};case"*":return i&&t?.isInsideGroup==!0?{type:"NumberLiteral",value:r.value*s.value,hasMillimeterSuffix:r.hasMillimeterSuffix===!0||s.hasMillimeterSuffix===!0,spreadMm:r.spreadMm||s.spreadMm}:a(s)&&r.type==="NumberLiteral"?{type:"Repeated",toRepeat:s.toRepeat,times:Math.round(r.value),hasMillimeterSuffix:s.type==="NumberLiteral"&&s.hasMillimeterSuffix||!1}:t?.isInsideGroup==!1&&r.type!=="SpecialVariable"&&r.name!=="n"?new D("cannot have * outside of group"):r.type==="SpecialVariable"?{type:"BinaryExpression",operator:"*",left:r,right:{type:"NumberLiteral",value:s.value,hasMillimeterSuffix:!0}}:{type:"BinaryExpression",operator:"*",left:r,right:s,hasMillimeterSuffix:r.hasMillimeterSuffix||s.hasMillimeterSuffix};case"/":if(i&&t?.isInsideGroup==!0)return{type:"NumberLiteral",value:r.value/s.value,hasMillimeterSuffix:r.hasMillimeterSuffix===!0||s.hasMillimeterSuffix===!0};if(t?.isInsideGroup==!1)return new D("cannot have / outside of group");case"-":return i&&n&&t?.isInsideGroup==!1?{type:"NumberLiteral",value:r.value-s.value,hasMillimeterSuffix:r.hasMillimeterSuffix===!0||s.hasMillimeterSuffix===!0,spreadMm:r.spreadMm||s.spreadMm}:i&&t?.isInsideGroup==!0?{type:"NumberLiteral",value:r.value-s.value,spreadMm:r.hasMillimeterSuffix||s.hasMillimeterSuffix}:{type:"BinaryExpression",operator:"-",left:r,right:s};default:throw new D("Invalid Operator")}}function at(e,t){const r=this.evaluate(e.arg);if(r instanceof D)throw new D("Error in function arguments");switch(e.name.toLowerCase()){case"abs":return{type:"NumberLiteral",value:Math.abs(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"acos":return{type:"NumberLiteral",value:Math.acos(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"asin":return{type:"NumberLiteral",value:Math.asin(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"atan":return{type:"NumberLiteral",value:Math.atan(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"cos":return{type:"NumberLiteral",value:Math.cos(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"sin":return{type:"NumberLiteral",value:Math.sin(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"tan":return{type:"NumberLiteral",value:Math.tan(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"round":return{type:"NumberLiteral",value:Math.round(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"bog2deg":return{type:"NumberLiteral",value:r.value*(180/Math.PI),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"deg2bog":return{type:"NumberLiteral",value:r.value*(Math.PI/180),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"in2mm":return{type:"NumberLiteral",value:r.value*25.4,hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"mm2in":return{type:"NumberLiteral",value:r.value/25.4,hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"ln":return{type:"NumberLiteral",value:Math.log(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};case"log10":return{type:"NumberLiteral",value:Math.log10(r.value),hasMillimeterSuffix:r.hasMillimeterSuffix,spreadMm:t?.isInsideGroup===!1};default:throw new D("Function not implemented")}}function ot(e){if(!this.variables||!(e.name in this.variables))throw new D(`Variable ${e.name} is not defined.`);return{type:"NumberLiteral",value:this.variables[e.name],hasMillimeterSuffix:e.hasMillimeterSuffix}}var lt=class{constructor(){L(this,"nestingLevel",0);L(this,"variables",{});L(this,"evaluateBinaryExpression");L(this,"evaluateFunction");L(this,"evaluateVariable");this.evaluateBinaryExpression=nt.bind(this),this.evaluateFunction=at.bind(this),this.evaluateVariable=ot.bind(this)}evaluate(e,t={isInsideGroup:!1},r){this.nestingLevel++;try{if(r&&(this.variables=r),this.isSections(e))return this.evaluateSections(e,t);if(this.isSection(e)){const s=this.evaluate(e.nodes,t);return s instanceof D?new D(`Error in section ${JSON.stringify(e)}`):{...e,nodes:s}}if(this.isNumberLiteral(e))if(t.isInsideGroup){if(e.hasMillimeterSuffix)return{...e,spreadMm:!0}}else return e;if(this.isGrouping(e)){t={...t,isInsideGroup:!0};const s=this.evaluate(e.expression,t);return s instanceof D?s:{...s,hasMillimeterSuffix:e.hasMillimeterSuffix}}if(this.isRepeated(e)){const s=this.evaluate(e.toRepeat);return s instanceof D?s:{...e,toRepeat:s}}if(this.isBinaryExpression(e))return this.evaluateBinaryExpression(e,t);if(this.isUnaryExpression(e))return{type:"NumberLiteral",value:e.operator==="-"?-1*e.right.value:e.right.value,hasMillimeterSuffix:e.right.hasMillimeterSuffix};if(this.isFunctionCall(e))return this.evaluateFunction(e,t);if(this.isVariable(e)){if(this.variables)return this.evaluateVariable(e);throw new D("No variables defined.")}throw new D(`unsupported node type: ${e.type}`)}catch(s){throw new D(s.message)}finally{this.nestingLevel--}}isUnaryExpression(e){return e.type==="UnaryExpression"}isNumberLiteral(e){return e.type==="NumberLiteral"}isVariable(e){return e.type==="Variable"||e.type==="SpecialVariable"}isBinaryExpression(e){return e.type==="BinaryExpression"}isFunctionCall(e){return e.type==="FunctionCall"}isGrouping(e){return e.type==="Grouping"}isRepeated(e){return e.type==="Repeated"}isSections(e){return e.type==="Sections"}isSection(e){return e.type==="Section"}evaluateSections(e,t={isInsideGroup:!1}){return{type:"Sections",sections:e.sections.map(s=>{const i=this.evaluate(s.nodes);if(i instanceof D)throw i;return{type:"Section",nodes:i}})}}};function F(e,t){if(!e)throw new D(`unsupported node type to traverse: ${JSON.stringify(e)}`);t(e),e.type==="Sections"&&Array.isArray(e.sections)?e.sections.forEach(r=>F(r,t)):e.type==="Section"&&e.nodes?F(e.nodes,t):e.type}var ct=class{accumulateIncorporatedThicknesses(e,t,r,s,i,n,a,o,l){let h=0;if(a==="M")for(let f=1;f<e.sections.length-1;f++)h+=s;if(a==="O")for(let f=1;f<e.sections.length-1;f++)h+=s*2;return i==="M"&&(h+=t/2),i==="O"&&(h+=t),n==="M"&&(h+=t/2),n==="O"&&(h+=t),l==="M"&&(h+=r/2),l==="O"&&(h+=r),o==="M"&&(h+=r/2),o==="O"&&(h+=r),h}},ut=class{calculateSections(e,t=500,r=0,s){try{if(e instanceof D)throw e;if(e.type!=="Sections"&&e.type!=="Section")throw new D(`Expected Sections or Section, got ${JSON.stringify(e)}`);let i={type:"Sections",sections:[]};if(e.type==="Sections")for(const u of e.sections)if(u.nodes.type==="Repeated"&&u.nodes.times){for(let d=0;d<(u.nodes?.times??0);d++)if(u.nodes.toRepeat.type==="Section")i.sections.push(u.nodes.toRepeat);else if(u.nodes.toRepeat.type==="Sections")for(const g of u.nodes.toRepeat.sections)i.sections.push(g)}else i.sections.push(u);else e.type==="Section"&&i.sections.push(e);if(s){const d=new ct().accumulateIncorporatedThicknesses(i,s.startPanelThk,s.endPanelThk,r,s.sizerefout1,s.sizerefedg1,s.sizerefmid,s.sizerefedg2,s.sizerefout2)}i.sections.forEach(u=>{let d=!1;F(u,g=>{g.type==="NumberLiteral"?g?.spreadMm===!0&&(d=!0):g.type==="BinaryExpression"&&g.left.type==="NumberLiteral"&&(g.left?.spreadMm===!0&&(d=!0),g.right?.spreadMm===!0&&(d=!0))}),d&&F(u,g=>{g.type==="NumberLiteral"?g.hasMillimeterSuffix=!0:g.type==="BinaryExpression"&&(g.left.type==="NumberLiteral"&&(g.left.hasMillimeterSuffix=!0),g.right.type==="NumberLiteral"&&(g.right.hasMillimeterSuffix=!0))})});let n=0;const a=u=>{if(r&&u.type==="Section"&&(n+=r),u.type==="NumberLiteral")u.hasMillimeterSuffix===!0&&(n+=u.value);else if(u.type==="BinaryExpression"){const d=u;d.left.type==="NumberLiteral"&&d.right.type==="NumberLiteral"&&(d.left.hasMillimeterSuffix===!0&&(n+=d.left.value),d.right.hasMillimeterSuffix===!0&&(n+=d.right.value))}};if(i.sections.forEach(u=>F(u,a)),n>t)throw new D("Total length exceeded");let o=t-n+r,l=0;const h=u=>{if(u.type==="BinaryExpression"){const d=u;if(d.right.type==="NumberLiteral"&&d.left.type==="SpecialVariable"&&d.left.name==="n"&&d.operator==="*"){l=Math.floor(o/(d.right.value+r));const g=(l-1)*r,I=l*d.right.value;o+=-g-I}}};i.sections.forEach(u=>F(u,h));let f=0;const m=u=>{u.type==="BinaryExpression"&&(u.left.type==="NumberLiteral"&&u.left.hasMillimeterSuffix===!1&&(f+=u.left.value),u.right.type==="NumberLiteral"&&u.right.hasMillimeterSuffix===!1&&(f+=u.right.value)),u.type==="NumberLiteral"&&u.hasMillimeterSuffix===!1&&(f+=u.value)};i.sections.forEach(u=>{F(u,m)});const p=o/f,x=[],y=u=>{let d=0,g=0;if(u.type==="NumberLiteral")u.hasMillimeterSuffix===!1&&(d+=u.value*p),u.hasMillimeterSuffix===!0&&(g+=u.value),x.push(Number((d+g).toFixed(2)));else if(u.type==="BinaryExpression"&&(u.left.type==="NumberLiteral"&&u.right.type==="NumberLiteral"&&(u.left.hasMillimeterSuffix===!1&&(d+=u.left.value*p),u.left.hasMillimeterSuffix===!0&&(g+=u.left.value),u.right.hasMillimeterSuffix===!1&&(d+=u.right.value*p),u.right.hasMillimeterSuffix===!0&&(g+=u.right.value),x.push(Number((d+g).toFixed(2)))),u.left.type==="SpecialVariable"&&u.left.name==="n"&&u.right.type==="NumberLiteral")){g+=u.right.value;for(let I=0;I<l;I++)u.right.hasMillimeterSuffix===!0&&x.push(Number(g.toFixed(2)))}};return i.sections.forEach(u=>{F(u,y)}),x}catch{return new D("Error calculating sections")}}},ht=new st,ft=new it,mt=new lt,pt=(e,t,r,s)=>{try{const i=ht.scan(e),n=ft.parse(i),a=mt.evaluate(n,{},s);if(a&&!(a instanceof D)){const l=new ut().calculateSections(a,t,r);if(l&&l instanceof D)throw new Error(l.message);return l}return a||new D("Unknown error during evaluation.")}catch(i){return new D(i.message)}};function dt(e){const t=/^(\d+)\*\{(\d+)\}$/,r=e.match(t);if(r){const s=parseInt(r[1],10),i=r[2];return s>0?Array(s).fill(i).join(":"):""}return e}function gt(e){const t=e.trim().match(/^(\d+(?:\.\d+)?)\s*\*\s*\{.+\}$/);return t?Number(t[1]):e}function xt(e,t,r){let s=0;const{LINDIV1:i,DIVDIR:n,HORDEFTYPE:a,DIVELEM1:o}=e;let l="width";if(i==="")return{divisionType:l,zone_dimensions:[],divided_length_list:[]};if(n==="H")if(a==="W")s=t.width,l="width";else if(a==="D")s=t.depth,l="depth";else if(a==="P")if(o===0||o===2)s=t.width,l="width";else if(o===1||o===3)s=t.depth,l="depth";else throw new Error("Unhandled case: DIVELEM1 = "+o);else throw new Error("Unhandled case: HORDEFTYPE = "+a);else if(n==="V")s=t.height,l="height";else if(n==="A")s=t.width,l="article";else if(n==="I")s=t.width,l="independent";else throw new Error("Unhandled case: DIVDIR = "+n);let h=[];const f=dt(i);if(l==="independent"){const p=gt(i);h=Array(p).fill(s)}else l==="article"?h=[s]:h=pt(f,s,r);return Array.isArray(h)?(a==="P"&&(o===2||o===3)&&(h=[...h].reverse()),{zone_dimensions:h.map(p=>{if(l==="width")return{width:p,height:t.height,depth:t.depth};if(l==="depth")return{width:t.width,height:t.height,depth:p};if(l==="height")return{width:t.width,height:p,depth:t.depth};if(l==="article"||l==="independent")return{width:t.width,height:t.height,depth:t.depth};throw new Error("Unhandled case: DIVDIR = "+n)}),divisionType:l,divided_length_list:h}):{divisionType:l,zone_dimensions:[],divided_length_list:[]}}function Et({divisionType:e,parentDimensions:t,lengthList:r,childTREEIDs:s,dividerThk:i}){const n=-t.width/2,a=-t.depth/2,o=-t.height/2;return{childPositions:r.reduce((h,f,m)=>{let p=0,x=0,y=0,u;return e==="width"?(p=n+h.cumulativeX+f/2,x=0,y=0,u={width:f,height:t.height,depth:t.depth},h.cumulativeX+=f+i):e==="depth"?(p=0,x=a+h.cumulativeY+f/2,y=0,u={width:t.width,height:t.height,depth:f},h.cumulativeY+=f+i):e==="independent"||e==="article"?(p=0,x=0,y=0,u={width:f,height:t.height,depth:t.depth}):(p=0,x=0,y=o+h.cumulativeZ+f/2,u={width:t.width,height:f,depth:t.depth},h.cumulativeZ+=f+i),h.positions.push({x:p,y:x,z:y,zone_dims:u,TREEID:s[m]}),h},{cumulativeX:0,cumulativeY:0,cumulativeZ:0,positions:[]}).positions,dividerType:e}}function St(e){return{front:Q(Oe(e)),left:Q(Re(e)),right:Q(Pe(e)),back:Q(Ve(e))}}function vt(e,t,r){return{front:e.front?.thk||0,right:e.right?.thk||0,back:e.back?.thk||0,left:e.left?.thk||0,top:t,bottom:r}}function Nt(e){return{front:e.front?.inset||0,right:e.right?.inset||0,back:e.back?.inset||0,left:e.left?.inset||0}}function Mt(e,t){return{dimensions:{width:e.width-t.left-t.right,height:e.height,depth:e.depth-t.front-t.back},position:{x:t.left/2-t.right/2,y:t.front/2-t.back/2,z:0}}}function Tt(e,t){return{dimensions:{width:e.dimensions.width-t.left-t.right,height:e.dimensions.height-t.top-t.bottom,depth:e.dimensions.depth-t.front-t.back},position:{x:t.left/2-t.right/2,y:t.front/2-t.back/2,z:t.bottom/2-t.top/2}}}function yt(e,t,r,s){return t.divisionType?Et({divisionType:t.divisionType,parentDimensions:e,lengthList:t.divided_length_list,childTREEIDs:s,dividerThk:Number(r)||0}):{childPositions:[],dividerType:"height"}}function It(e,t,r,s){if(!r)return{childPositions:[],dividerType:"height"};const i=xt(r,e.dimensions,t);return yt(e.dimensions,i,t,s)}function B({length:e,width:t,thk:r,material:s="gray",opacity:i=.2,isSelected:n=!1,isHovered:a=!1,onClick:o,onPointerEnter:l,onPointerLeave:h}){const f=n?"#ff6b00":a?"#0066ff":s,m=n?.8:a?.6:i;return c.jsx("group",{children:c.jsxs("mesh",{onClick:o,onPointerEnter:l,onPointerLeave:h,children:[c.jsx("boxGeometry",{args:[e/S,t/S,r/S]}),c.jsx("meshStandardMaterial",{color:f,opacity:m,transparent:!0}),c.jsx(be.Edges,{color:n?"#ff6b00":a?"#0066ff":"black"})]})})}function bt(e,t,r=0,s=0){const i=e/2,n=t/2,a=i,o=n;return`
4
- ${a},${-o}
5
- ${-a},${-o}
6
- ${-a+r},${o}
7
- ${a-s},${o}
8
- `.trim().replace(/\s+/g," ")}function H({dim_x:e,dim_y:t,fill:r="lightgray",text:s="",stroke_width:i=2,rotate:n=0,isSelected:a=!1,isHovered:o=!1,onClick:l,onMouseEnter:h,onMouseLeave:f,startPanelThk:m=0,endPanelThk:p=0}){const x=bt(e,t,m,p),y=a?"#ff6b00":o?"#0066ff":"black",u=a?i*2:o?i*1.5:i,d=a?.8:o?.7:.5;return c.jsxs("g",{transform:`rotate(${n})`,children:[c.jsx("polygon",{points:x,stroke:y,strokeWidth:u,fill:r,strokeLinejoin:"bevel",strokeMiterlimit:"1",opacity:d,onClick:l,onMouseEnter:h,onMouseLeave:f,style:{cursor:l?"pointer":"default"}}),c.jsx("text",{transform:"scale(1,-1)",x:0,y:0,textAnchor:"middle",dominantBaseline:"middle",fontSize:14,children:s})]})}function _t({TREEID:e,dimension:t,view:r,helper:s}){const i=s.front,n=b.useContext(R);if(!i||!n)return;const{selectedElem:a,setSelectedElem:o,hoveredElem:l,setHoveredElem:h}=n,{CPNAME:f}=i;if(!f)return null;const{elmTrimThk:m}=i,p=s.left?.thk,x=s.right?.thk,y=(i.trim.start==="S"?p:0)??0,u=(i.trim.end==="S"?x:0)??0,d=(i.trim.start==="M"?p:0)??0,g=(i.trim.end==="M"?x:0)??0,I=t.height-m.top-m.bottom+i.oversize.top+i.oversize.bottom,v=t.width-y-u+i.oversize.start+i.oversize.end,T=i.thk,C=-(i.oversize.start/2-i.oversize.end/2-y/2+u/2),E=i.oversize.bottom/2-i.oversize.top/2+m.bottom/2-m.top/2,N=-(t.depth/2-T/2),_=a===e,A=l===e,w=()=>{console.log("handleClick",e),o(_?null:e)},k=()=>{h(e)},O=()=>{h(null)};return r===M._3D?c.jsx("group",{position:[C/S,N/S,E/S],rotation:[Math.PI/2,0,Math.PI/2],children:c.jsx(B,{length:I,width:v,thk:T,treeId:e,isSelected:_,isHovered:A,onClick:w,onPointerEnter:k,onPointerLeave:O})}):c.jsx("g",{transform:`translate(${C},${r===M._2D_TOP?N:E}) rotate(0)`,children:c.jsx(H,{dim_x:v,dim_y:r===M._2D_TOP?T:I,text:"front "+I+" x "+v+" x "+T,treeId:e,isSelected:_,isHovered:A,onClick:w,onMouseEnter:k,onMouseLeave:O,startPanelThk:r===M._2D_TOP?d:0,endPanelThk:r===M._2D_TOP?g:0})})}const J=({view:e=M._3D,position:t=[0,0,0],rotation:r=[0,0,0],children:s})=>{if(e===M._3D)return c.jsx("group",{position:[t[0]/S,t[1]/S,t[2]/S],rotation:r,children:s});const i=t[0],n=e===M._2D_TOP?t[1]:t[2],a=r[2]*(180/Math.PI);return c.jsx("g",{transform:`translate(${i},${n}) rotate(${a})`,children:s})};function kt({TREEID:e,dimension:t,view:r,helper:s}){const i=s.left,n=b.useContext(R);if(!i||!n)return;const{selectedElem:a,setSelectedElem:o,hoveredElem:l,setHoveredElem:h}=n,{CPNAME:f}=i;if(!f)return null;const{elmTrimThk:m}=i,p=s.back?.thk,x=s.front?.thk,y=(i.trim.start==="S"?p:0)??0,u=(i.trim.end==="S"?x:0)??0,d=(i.trim.start==="M"?p:0)??0,g=(i.trim.end==="M"?x:0)??0,I=t.height-m.top-m.bottom+i.oversize.top+i.oversize.bottom,v=t.depth-y-u+i.oversize.start+i.oversize.end,T=i.thk,C=-(t.width/2-T/2),E=i.oversize.start/2-i.oversize.end/2-y/2+u/2,N=i.oversize.bottom/2-i.oversize.top/2+m.bottom/2-m.top/2,_=a===e,A=l===e,w=()=>{o(_?null:e)},k=()=>{h(e)},O=()=>{h(null)};return r===M._3D?c.jsx("group",{position:[C/S,E/S,N/S],rotation:[0,Math.PI/2,0],children:c.jsx(B,{length:I,width:v,thk:T,treeId:e,isSelected:_,isHovered:A,onClick:w,onPointerEnter:k,onPointerLeave:O})}):c.jsx("g",{transform:`translate(${C},${r===M._2D_TOP?E:N}) rotate(90)`,children:c.jsx(H,{dim_x:r===M._2D_TOP?v:I,dim_y:T,text:"left "+I+" x "+v+" x "+T,treeId:e,rotate:180,isSelected:_,isHovered:A,onClick:w,onMouseEnter:k,onMouseLeave:O,startPanelThk:r===M._2D_TOP?d:0,endPanelThk:r===M._2D_TOP?g:0})})}function At({TREEID:e,dimension:t,view:r,helper:s}){const i=s.back,n=b.useContext(R);if(!i||!n)return;const{selectedElem:a,setSelectedElem:o,hoveredElem:l,setHoveredElem:h}=n,{CPNAME:f}=i;if(!f)return null;const{elmTrimThk:m}=i,p=s.right?.thk,x=s.left?.thk,y=(i.trim.start==="S"?p:0)??0,u=(i.trim.end==="S"?x:0)??0,d=(i.trim.start==="M"?p:0)??0,g=(i.trim.end==="M"?x:0)??0,I=t.height-m.top-m.bottom+i.oversize.top+i.oversize.bottom,v=t.width-y-u+i.oversize.start+i.oversize.end,T=i.thk,C=i.oversize.start/2-i.oversize.end/2-y/2+u/2,E=t.depth/2-T/2,N=i.oversize.bottom/2-i.oversize.top/2+m.bottom/2-m.top/2,_=a===e,A=l===e,w=()=>{o(_?null:e)},k=()=>{h(e)},O=()=>{h(null)};return r===M._3D?c.jsxs("group",{position:[C/S,E/S,N/S],rotation:[Math.PI/2,0,Math.PI/2],children:[c.jsx(B,{length:I,width:v,thk:T,treeId:e,isSelected:_,isHovered:A,onClick:w,onPointerEnter:k,onPointerLeave:O}),c.jsx(be.Text,{position:[0,0,0],color:"blue",fontSize:20,children:e})]}):c.jsx("g",{transform:`translate(${C},${r===M._2D_TOP?E:N}) rotate(0)`,children:c.jsx(H,{dim_x:v,dim_y:r===M._2D_TOP?T:I,text:"Back "+I+" x "+v+" x "+T,treeId:e,isSelected:_,rotate:180,isHovered:A,onClick:w,onMouseEnter:k,onMouseLeave:O,startPanelThk:r===M._2D_TOP?d:0,endPanelThk:r===M._2D_TOP?g:0})})}function Dt({TREEID:e,dimension:t,view:r,helper:s}){const i=s.right,n=b.useContext(R);if(!i||!n)return;const{selectedElem:a,setSelectedElem:o,hoveredElem:l,setHoveredElem:h}=n,{CPNAME:f}=i;if(!f)return null;const{elmTrimThk:m}=i,p=s.front?.thk,x=s.back?.thk,y=(i.trim.start==="S"?p:0)??0,u=(i.trim.end==="S"?x:0)??0,d=(i.trim.start==="M"?p:0)??0,g=(i.trim.end==="M"?x:0)??0,I=t.height-m.top-m.bottom+i.oversize.top+i.oversize.bottom,v=t.depth-y-u+i.oversize.start+i.oversize.end,T=i.thk,C=t.width/2-T/2,E=-(i.oversize.start/2-i.oversize.end/2-y/2+u/2),N=i.oversize.bottom/2+i.oversize.top/2+m.bottom/2-m.top/2,_=a===e,A=l===e,w=()=>{o(_?null:e)},k=()=>{h(e)},O=()=>{h(null)};return r===M._3D?c.jsx("group",{position:[C/S,E/S,N/S],rotation:[0,Math.PI/2,0],children:c.jsx(B,{length:I,width:v,thk:T,treeId:e,isSelected:_,isHovered:A,onClick:w,onPointerEnter:k,onPointerLeave:O})}):c.jsx("g",{transform:`translate(${C},${r===M._2D_TOP?E:N}) rotate(90)`,children:c.jsx(H,{dim_x:r===M._2D_TOP?v:I,dim_y:T,text:"right "+I+" x "+v+" x "+T,treeId:e,isSelected:_,isHovered:A,onClick:w,onMouseEnter:k,onMouseLeave:O,startPanelThk:r===M._2D_TOP?d:0,endPanelThk:r===M._2D_TOP?g:0})})}function Ct({TREEID:e,dimension:t,view:r,helper:s}){const i=ae(e),n=b.useContext(R);if(!i||!n)return;const{selectedElem:a,setSelectedElem:o,hoveredElem:l,setHoveredElem:h}=n,{topShelfCP:f}=i;if(!f)return;const m=(s.front?.trim.top!=="S"?s.front?.thk:0)??0,p=(s.back?.trim.top!=="S"?s.back?.thk:0)??0,x=(s.left?.trim.top!=="S"?s.left?.thk:0)??0,y=(s.right?.trim.top!=="S"?s.right?.thk:0)??0,u=t.width-x-y,d=t.depth-p-m,g=i.topShelfThk,I=x/2-y/2,v=-(p/2-m/2),T=t.height/2-g/2,C=a===e,E=l===e,N=()=>{o(C?null:e)},_=()=>{h(e)},A=()=>{h(null)};return r===M._3D?c.jsx("group",{position:[I/S,v/S,T/S],rotation:[0,0,0],children:c.jsx(B,{length:u,width:d,thk:g,opacity:.8,treeId:e,isSelected:C,isHovered:E,onClick:N,onPointerEnter:_,onPointerLeave:A})}):c.jsx("g",{transform:`translate(${I},${r===M._2D_TOP?v:T})`,children:c.jsx(H,{dim_x:u,dim_y:r===M._2D_TOP?d:g,text:"Top "+e+" -- "+u+" x "+d+" x "+g,treeId:e,isSelected:C,isHovered:E,onClick:N,onMouseEnter:_,onMouseLeave:A})})}function wt({TREEID:e,dimension:t,view:r,helper:s}){const i=ae(e),n=b.useContext(R);if(!i||!n)return;const{selectedElem:a,setSelectedElem:o,hoveredElem:l,setHoveredElem:h}=n,{bottomShelfCP:f}=i;if(!f)return;const m=(s.front?.trim.bottom!=="S"?s.front?.thk:0)??0,p=(s.back?.trim.bottom!=="S"?s.back?.thk:0)??0,x=(s.left?.trim.bottom!=="S"?s.left?.thk:0)??0,y=(s.right?.trim.bottom!=="S"?s.right?.thk:0)??0,u=t.width-x-y,d=t.depth-p-m,g=i.bottomShelfThk,I=x/2-y/2,v=-(p/2-m/2),T=-(t.height/2-g/2),C=a===e,E=l===e,N=()=>{o(C?null:e)},_=()=>{h(e)},A=()=>{h(null)};return r===M._3D?c.jsx("group",{position:[I/S,v/S,T/S],rotation:[0,0,0],children:c.jsx(B,{length:u,width:d,thk:g,opacity:.8,treeId:e,isSelected:C,isHovered:E,onClick:N,onPointerEnter:_,onPointerLeave:A})}):c.jsx("g",{transform:`translate(${I},${r===M._2D_TOP?v:T})`,children:c.jsx(H,{dim_x:u,dim_y:r===M._2D_TOP?d:g,text:"Bot "+u+" x "+d+" x "+g,treeId:e,isSelected:C,isHovered:E,onClick:N,onMouseEnter:_,onMouseLeave:A})})}function Fe(){const e=b.useContext(de);if(!e)throw new Error("useDescriptorManager must be used within a DescriptorProvider");return e}function $e(e,t,r,s={}){const{throwOnError:i=!1}=s;if(!e.hasDescriptor(t))throw new Error(`Descriptor ${t} not found`);return b.useMemo(()=>{try{return{result:e.evaluate(t,r),error:null,success:!0}}catch(n){const a=n instanceof Error?n.message:"Unknown error";if(i)throw n;return{result:null,error:a,success:!1}}},[e,t,r,i])}function Lt(e,t,r){return b.useMemo(()=>{try{const s=e.findAllMatches(t,r);return{matches:s,error:null,count:s.length}}catch(s){const i=s instanceof Error?s.message:"Unknown error";return{matches:[],error:i,count:0}}},[e,t,r])}const V={LINEAR_DIVISION:"linear-division",ARTICLE:"article"},$={STRING:"string",DESCRIPTOR:"descriptor"},Ie={linearDivision:e=>e.type===V.LINEAR_DIVISION,article:e=>e.type===V.ARTICLE},Ot={string:e=>e.type===V.LINEAR_DIVISION&&e.valueSource===$.STRING,descriptor:e=>e.type===V.LINEAR_DIVISION&&e.valueSource===$.DESCRIPTOR},ie={string:e=>e.type===V.ARTICLE&&e.valueSource===$.STRING,descriptor:e=>e.type===V.ARTICLE&&e.valueSource===$.DESCRIPTOR},q={linearDivisionString(e,t,r,s,i,n,a,o){return{TREEID:e,type:V.LINEAR_DIVISION,valueSource:$.STRING,DIVDIR:t,DIVTYPE:r,HORDEFTYPE:s,LINDIV1:i,DIVELEM1:n,DIVIDER:"",formula:a,thickness:o}},linearDivisionDescriptor(e,t,r,s,i,n,a,o){return{TREEID:e,type:V.LINEAR_DIVISION,valueSource:$.DESCRIPTOR,DIVDIR:t,DIVTYPE:r,HORDEFTYPE:s,LINDIV1:i,DIVELEM1:n,DIVIDER:"",descriptorName:a,thickness:o}},articleString(e,t,r,s,i,n,a){return{TREEID:e,type:V.ARTICLE,valueSource:$.STRING,DIVDIR:t,DIVTYPE:r,HORDEFTYPE:s,LINDIV1:i,DIVELEM1:n,DIVIDER:a,articleName:a}},articleDescriptor(e,t,r,s,i,n,a){return{TREEID:e,type:V.ARTICLE,valueSource:$.DESCRIPTOR,DIVDIR:t,DIVTYPE:r,HORDEFTYPE:s,LINDIV1:i,DIVELEM1:n,DIVIDER:a,descriptorName:a}},fromZoneData(e,t){const r=s=>s.trim().startsWith("#");if(e.DIVDIR==="A"){if(r(e.DIVIDER)){const s=e.DIVIDER.replace("#","").trim();return q.articleDescriptor(e.TREEID,e.DIVDIR,e.DIVTYPE,e.HORDEFTYPE,e.LINDIV1,e.DIVELEM1,s)}return q.articleString(e.TREEID,e.DIVDIR,e.DIVTYPE,e.HORDEFTYPE,e.LINDIV1,e.DIVELEM1,e.DIVIDER)}if(r(e.LINDIV1)){const s=e.LINDIV1.replace("#","").trim();return q.linearDivisionDescriptor(e.TREEID,e.DIVDIR,e.DIVTYPE,e.HORDEFTYPE,e.LINDIV1,e.DIVELEM1,s,t)}return q.linearDivisionString(e.TREEID,e.DIVDIR,e.DIVTYPE,e.HORDEFTYPE,e.LINDIV1,e.DIVELEM1,e.LINDIV1,t)}};function Pt(e){if(!e)return"width";const t={0:"width",1:"depth",2:"width",3:"depth"};return e.DIVDIR==="V"?"height":e.HORDEFTYPE==="W"?"width":e.HORDEFTYPE==="D"?"depth":e.HORDEFTYPE==="P"?t[e.DIVELEM1]??"width":"width"}function Vt(e,t){return t?t[e]:0}function Rt(e,t){const r=e;if($t(e))return{value:e.startsWith("#")?e.slice(1):e,original:r,isReference:!0};if(/^\d+:\d+$/.test(e))return{value:e,original:r,isReference:!1};const{format:s,expression:i,suffix:n}=Ft(e);let a=i;a=a.replace(/^\((.+)\)$/,"$1");const l=De(a,{variableTree:t,allowFunctions:!0,dataType:"FL",silent:!0}).value??i;let h;switch(s){case"expr:ratio":h=`${l}${n}`;break;case"ratio:expr":h=`${n}${l}`;break;case"expr*{ratio}":h=`${l}${n}`;break;case"simple":h=String(l);break}return{value:h,original:r,isReference:!1}}function jt(e,t){return Rt(e,t).value}function Ft(e){const r=e.trim().replace(/^\((.+)\)$/,"$1"),s=r.match(/^(\d+|n):(.+?)(mm|cm)?$/);if(s){const[,a,o,l]=s;return{format:"ratio:expr",expression:o.trim(),suffix:l?`${a}:${l}`:`${a}:`}}const i=r.match(/^(.+?)(mm|cm)?:(\d+)$/);if(i){const[,a,o,l]=i;return{format:"expr:ratio",expression:a.trim(),suffix:o?`${o}:${l}`:`:${l}`}}const n=r.match(/^(.+?)(\*)?{(\d+)}$/);if(n){const[,a,o,l]=n;return{format:"expr*{ratio}",expression:a.trim(),suffix:o?`*{${l}}`:`{${l}}`}}return{format:"simple",expression:r,suffix:""}}function $t(e){return e.startsWith("#")?!0:e.includes("(")||/[+\-*/]/.test(e)?!1:/^[A-Za-z0-9_-]+$/.test(e)?!0:!/^\d+:\d+$/.test(e)}function ze({divider:e,inputData:t}){const r=Fe(),{resolveString:s}=G(),{result:i,error:n}=$e(r,e.descriptorName,t,{throwOnError:!1}),a=b.useMemo(()=>e?ie.string(e)?e.articleName:ie.descriptor(e)&&i?.lindiv?i.lindiv:"":"",[e,i]);return{updatedDivider:b.useMemo(()=>{if(e)return i?.lindiv!=null?{...e,LINDIV1:jt(s(i.lindiv)),articleName:a}:{...e,LINDIV1:s(e.LINDIV1)}},[e,i,a,s])}}const zt={width:{rotation:[0,Math.PI/2,0],get3D:(e,t)=>({length:e.height,width:e.depth,thk:t}),get2DTop:(e,t)=>({dim_x:e.depth,dim_y:t,rotate:90}),get2DFront:(e,t)=>({dim_x:e.height,dim_y:t,rotate:90})},height:{rotation:[0,0,0],get3D:(e,t)=>({length:e.width,width:e.depth,thk:t}),get2DTop:e=>({dim_x:e.width,dim_y:e.depth}),get2DFront:(e,t)=>({dim_x:e.width,dim_y:t})},depth:{rotation:[Math.PI/2,0,Math.PI/2],get3D:(e,t)=>({length:e.height,width:e.width,thk:t}),get2DTop:(e,t)=>({dim_x:e.width,dim_y:t}),get2DFront:e=>({dim_x:e.width,dim_y:e.height})},article:{rotation:[0,0,0],get3D:(e,t)=>({length:e.width,width:e.depth,thk:t}),get2DTop:e=>({dim_x:e.width,dim_y:e.depth}),get2DFront:(e,t)=>({dim_x:e.width,dim_y:t})},independent:{rotation:[0,0,0],get3D:(e,t)=>({length:e.width,width:e.depth,thk:t}),get2DTop:e=>({dim_x:e.width,dim_y:e.depth}),get2DFront:(e,t)=>({dim_x:e.width,dim_y:t})}},Gt=(e,t,r)=>({x:e==="width"?r.width/2+t/2:0,y:e==="depth"?r.depth/2+t/2:0,z:e==="height"?r.height/2+t/2:0});function Bt({divider:e,view:t,childrenPositon:r,dividerThk:s}){const i=b.useContext(R),n=r.dividerType,a=r.childPositions,o=zt[n];if(!i)return null;const{selectedElem:l,setSelectedElem:h,hoveredElem:f,setHoveredElem:m}=i;return a.map((p,x)=>{const u=!(x===a.length-1)&&s!==0,d=Gt(n,s,p.zone_dims),g=o.get3D(p.zone_dims,s),I=t===M._2D_TOP?o.get2DTop(p.zone_dims,s):o.get2DFront(p.zone_dims,s),v=`${e.TREEID} divider`,T=l===v,C=f===v;return c.jsx(b.Fragment,{children:c.jsxs(J,{view:t,position:[p.x/S,p.y/S,p.z/S],children:[c.jsx(J,{view:t,position:[d.x/S,d.y/S,d.z/S],rotation:o.rotation,children:u&&c.jsxs(c.Fragment,{children:[c.jsx("group",{children:c.jsxs("mesh",{children:[c.jsx("boxGeometry",{args:[g.length,g.width,g.thk]}),c.jsx("meshStandardMaterial",{color:"blue",transparent:!0,opacity:.3})]})}),t===M._3D?c.jsx(B,{...g,opacity:1,treeId:v,isSelected:T,isHovered:C,onClick:()=>h(T?null:v),onPointerEnter:()=>m(v),onPointerLeave:()=>m(null)}):c.jsx(H,{...I,text:v,treeId:v,isSelected:T,isHovered:C,onClick:()=>h(T?null:v),onMouseEnter:()=>m(v),onMouseLeave:()=>m(null)})]})}),c.jsx(Se,{TREEID:p.TREEID,dimension:p.zone_dims,view:t})]})},x)})}function Ht({view:e,remainingZone:t,articleName:r}){return c.jsx(he,{articleName:r,dimensionOverrides:{width:t.dimensions.width,height:t.dimensions.height,depth:t.dimensions.depth},children:c.jsx(J,{view:e,position:[t.position.x/S,t.position.y/S,t.position.z/S],children:c.jsx(ve,{view:e})})})}function Ut({childrenPositon:e,dividerThk:t,divider:r,view:s,remainingZone:i}){if(Ie.linearDivision(r))return e?c.jsx(Bt,{view:s,childrenPositon:e,dividerThk:t,divider:r,remainingZone:i}):null;if(Ie.article(r)){const n=ie.string(r)?r.articleName:r.LINDIV1;return!i||n===""?null:c.jsx(Ht,{view:s,articleName:n,remainingZone:i})}return null}function Ge(){const{getArticleData:e}=W(),{articleName:t,dimensionOverrides:r}=X(),{resolveString:s}=G(),{anglPrims:i}=e(t);if(i.length===0)throw new Error(`No prims found for article: ${t}`);const n=i[0],a=(l,h)=>{const f=typeof l=="string"&&l!==""?re(s(l)):h;return parseFloat(String(f))||0},o={width:r?.width??a(n.DIMCALCFX,n.SIZEX),height:r?.height??a(n.DIMCALCFZ,n.SIZEZ),depth:r?.depth??a(n.DIMCALCFY,n.SIZEY)};return{current_prim:n,prim_dims:o}}function Se({TREEID:e,dimension:t,view:r=M._3D}){console.log(`===================================== Zone Start ${e} =====================================`);const s=ae(e),i=s?.zoneInfo(),n=s?.dividerThk||0,a=Ge(),o=St(e),l=vt(o,s?.topShelfThk||0,s?.bottomShelfThk||0),h=Nt(o),f=Mt(t,h),m=Tt(f,l),p=b.useMemo(()=>{if(s)return q.fromZoneData(s.currentZone,n)},[s,n]),x=i?Object.fromEntries(i):{},y=Pt(p),u=Vt(y,m.dimensions);x["AD article width"]=a?.prim_dims.width.toString(),x["AD article height"]=a?.prim_dims.height.toString(),x["AD article depth"]=a?.prim_dims.depth.toString(),x[0]="0",x.X=u.toString();const d=p?Ot.descriptor(p):!1,g=p?ie.descriptor(p):!1,v=d||g?ze({divider:p,inputData:x}).updatedDivider:p,T=It(m,n,v,s?.children.map(C=>C.TREEID)||[]);return(e==="0"||e==="0")&&(console.log("start dimensions ",t),console.log("border inset",h),console.log("border thk",l),console.log("zone dimensions ",f.dimensions),console.log("position => ",f.position),console.log("remaining dimensions ",m.dimensions),console.log("remaining position => ",m.position)),c.jsx(c.Fragment,{children:c.jsxs(J,{view:r,position:[f.position.x/S,f.position.y/S,f.position.z/S],children:[o.front?.CPNAME&&c.jsx(_t,{view:r,TREEID:Oe(e),dimension:f.dimensions,helper:o}),o.left?.CPNAME&&c.jsx(kt,{view:r,TREEID:Re(e),dimension:f.dimensions,helper:o}),o.back?.CPNAME&&c.jsx(At,{view:r,TREEID:Ve(e),dimension:f.dimensions,helper:o}),o.right?.CPNAME&&c.jsx(Dt,{view:r,TREEID:Pe(e),dimension:f.dimensions,helper:o}),s?.topShelfCP&&c.jsx(Ct,{view:r,TREEID:e,dimension:f.dimensions,helper:o}),s?.bottomShelfCP&&c.jsx(wt,{view:r,TREEID:e,dimension:f.dimensions,helper:o}),c.jsx(J,{view:r,position:[m.position.x/S,m.position.y/S,m.position.z/S],children:v&&c.jsx(Ut,{remainingZone:m,divider:v,view:r,childrenPositon:T,dividerThk:n})})]})})}const Zt="scale(1,-1)";function ve({view:e=M._3D}){console.log("========================================================= Designer ===============================================================================================");const r=Ge().prim_dims,s=c.jsx(Se,{TREEID:"0",view:e,dimension:r}),i=e===M._3D?s:c.jsx("g",{transform:Zt,children:s});return console.log(i),i}function Kt({view:e,data:t,articleName:r}){const s=t.descriptors,i=t.variables,n=t.anglprim.map(a=>a.NAME);return c.jsx(c.Fragment,{children:c.jsx(_e,{names:n,data:t,children:c.jsx(he,{articleName:r,children:c.jsx(Ae,{imosVariables:i,children:c.jsx(Le,{descriptorData:s,children:c.jsx(ve,{view:e})})})})})})}function Yt(){const{tree:e,getValue:t,setValue:r}=G(),s=(o,l)=>{const h=Number(l);r(o,isNaN(h)?l:h)},n=(()=>{const o={[P.Numeric]:{type:P.Numeric,label:"Dimensions (Numeric)",variables:[]},[P.Surface]:{type:P.Surface,label:"Surfaces",variables:[]},[P.Material]:{type:P.Material,label:"Materials",variables:[]},[P.Text]:{type:P.Text,label:"Text",variables:[]}};return Array.from(e.entries()).forEach(([l,h])=>{const f=t(l),m=h.WERT.startsWith("$");o[h.TYP]?.variables.push({name:l,value:f??"undefined",reference:m?h.WERT:void 0,rawType:h.TYP})}),Object.values(o).filter(l=>l.variables.length>0)})(),a=o=>{const l=o.rawType===P.Numeric,h=typeof o.value=="number"?o.value:Number(o.value);return l&&!isNaN(h)?c.jsxs("div",{className:"var-controller__slider-container",children:[c.jsx("input",{type:"range",min:0,max:2e4,value:h,onChange:f=>s(o.name,f.target.value),className:"var-controller__slider"}),c.jsx("input",{type:"number",value:h,onChange:f=>s(o.name,f.target.value),onBlur:f=>s(o.name,f.target.value),className:"var-controller__number-input",min:0,max:2e4})]}):c.jsx("input",{type:"text",value:o.value,onChange:f=>s(o.name,f.target.value),onBlur:f=>s(o.name,f.target.value),className:"var-controller__text-input"})};return c.jsxs("div",{className:"var-controller",children:[c.jsx("h2",{children:"Variable Controller"}),c.jsxs("p",{className:"var-controller__header",children:["Total variables: ",e.size]}),n.map(o=>c.jsxs("section",{className:"var-controller__section",children:[c.jsxs("h3",{className:"var-controller__section-title",children:[o.label," (",o.variables.length,")"]}),c.jsxs("table",{className:"var-controller__table",children:[c.jsx("thead",{children:c.jsxs("tr",{children:[c.jsx("th",{style:{width:"25%"},children:"Variable Name"}),c.jsx("th",{style:{width:"35%"},children:"Current Value"}),c.jsx("th",{style:{width:"25%"},children:"Reference"}),c.jsx("th",{className:"center",style:{width:"15%"},children:"Type"})]})}),c.jsx("tbody",{children:o.variables.map(l=>c.jsxs("tr",{children:[c.jsx("td",{className:"var-controller__var-name",children:l.name}),c.jsx("td",{children:a(l)}),c.jsx("td",{className:"var-controller__reference",children:l.reference||"-"}),c.jsx("td",{style:{textAlign:"center"},children:c.jsx("span",{className:"var-controller__type-badge",children:o.type})})]},l.name))})]})]},o.type)),c.jsxs("section",{className:"var-controller__stats",children:[c.jsx("h4",{children:"Quick Stats"}),c.jsx("ul",{children:n.map(o=>c.jsxs("li",{children:[o.label,": ",o.variables.length," variables"]},o.type))})]})]})}const Wt="1.0.0";exports.ArticleContext=ue;exports.ArticleDesigner=Kt;exports.ArticleProvider=he;exports.DataContext=R;exports.DataProvider=_e;exports.DescriptorContext=de;exports.DescriptorProvider=Le;exports.Designer=ve;exports.VERSION=Wt;exports.VIEW=M;exports.VarController=Yt;exports.VariableContext=fe;exports.VariableProvider=Ae;exports.VariableResolver=Ze;exports.Zone=Se;exports.ZoneDescriptor=ze;exports.useArticle=X;exports.useData=W;exports.useDescriptorEvaluation=$e;exports.useDescriptorManager=Fe;exports.useDescriptorMatches=Lt;exports.useVariables=G;
1
+ 'use strict';const a0_0x235465=a0_0x5bf0;(function(_0x1a1d13,_0x42bcc5){const _0x2d94e4=a0_0x5bf0,_0x4b35ba=_0x1a1d13();while(!![]){try{const _0x999595=-parseInt(_0x2d94e4(0x388))/0x1*(-parseInt(_0x2d94e4(0x2f8))/0x2)+-parseInt(_0x2d94e4(0x333))/0x3*(-parseInt(_0x2d94e4(0x24f))/0x4)+parseInt(_0x2d94e4(0x21f))/0x5*(-parseInt(_0x2d94e4(0x297))/0x6)+-parseInt(_0x2d94e4(0x3a7))/0x7+parseInt(_0x2d94e4(0x35e))/0x8+parseInt(_0x2d94e4(0x2e0))/0x9+-parseInt(_0x2d94e4(0x2f0))/0xa;if(_0x999595===_0x42bcc5)break;else _0x4b35ba['push'](_0x4b35ba['shift']());}catch(_0xe111f3){_0x4b35ba['push'](_0x4b35ba['shift']());}}}(a0_0x4094,0x1d020));var Ze=Object[a0_0x235465(0x311)],Ke=(_0x105bbc,_0xbadefd,_0x9c7fe7)=>_0xbadefd in _0x105bbc?Ze(_0x105bbc,_0xbadefd,{'enumerable':!0x0,'configurable':!0x0,'writable':!0x0,'value':_0x9c7fe7}):_0x105bbc[_0xbadefd]=_0x9c7fe7,A=(_0xfff2a9,_0x1c7d02,_0x2de058)=>Ke(_0xfff2a9,typeof _0x1c7d02!=a0_0x235465(0x398)?_0x1c7d02+'':_0x1c7d02,_0x2de058);Object[a0_0x235465(0x311)](exports,Symbol[a0_0x235465(0x363)],{'value':'Module'});const c=require(a0_0x235465(0x30c)),M=require(a0_0x235465(0x21a)),De=require('@react-three/drei'),ue=require('three'),O=M[a0_0x235465(0x25e)](void 0x0);function ke({data:_0x5708b4,children:_0xe8a623,names:_0x3ed4a1}){const _0x249d06=a0_0x235465,_0x1f2b08=_0x5708b4,[_0x57bbea,_0x3b6dc3]=M[_0x249d06(0x259)](_0x1f2b08),[_0x270492,_0x35000a]=M[_0x249d06(0x259)](null),[_0x1333fa,_0x56699e]=M['useState'](null),_0xf3a809=M[_0x249d06(0x289)](_0x363a69=>({'anglElems':_0x57bbea[_0x249d06(0x373)][_0x249d06(0x30a)](_0x54e8ab=>_0x54e8ab['NAME']===_0x363a69),'anglZones':_0x57bbea[_0x249d06(0x282)]['filter'](_0x33b553=>_0x33b553[_0x249d06(0x266)]===_0x363a69),'anglPrims':_0x57bbea[_0x249d06(0x2e9)]['filter'](_0x87c031=>_0x87c031[_0x249d06(0x266)]===_0x363a69),'anglClies':_0x57bbea['anglclie'][_0x249d06(0x30a)](_0xdd07ad=>_0xdd07ad['NAME']===_0x363a69),'anglGrtxs':_0x57bbea['anglgrtx'][_0x249d06(0x30a)](_0x434832=>_0x434832['NAME']===_0x363a69)}),[_0x57bbea]),{anglElems:_0x1ce738,anglZones:_0x4d85dc,anglPrims:_0x4f7e93,anglClies:_0x3394cf,anglGrtxs:_0x1a6d23}=M[_0x249d06(0x1f6)](()=>_0x3ed4a1&&_0x3ed4a1[_0x249d06(0x2e1)]>0x0?{'anglElems':_0x57bbea['anglelem'][_0x249d06(0x30a)](_0x2f7cab=>_0x3ed4a1[_0x249d06(0x31a)](_0x2f7cab[_0x249d06(0x266)])),'anglZones':_0x57bbea[_0x249d06(0x282)]['filter'](_0x47e835=>_0x3ed4a1[_0x249d06(0x31a)](_0x47e835['NAME'])),'anglPrims':_0x57bbea[_0x249d06(0x2e9)][_0x249d06(0x30a)](_0x3196f4=>_0x3ed4a1[_0x249d06(0x31a)](_0x3196f4[_0x249d06(0x266)])),'anglClies':_0x57bbea[_0x249d06(0x361)][_0x249d06(0x30a)](_0x2dd326=>_0x3ed4a1[_0x249d06(0x31a)](_0x2dd326['NAME'])),'anglGrtxs':_0x57bbea['anglgrtx'][_0x249d06(0x30a)](_0x1fd876=>_0x3ed4a1[_0x249d06(0x31a)](_0x1fd876[_0x249d06(0x266)]))}:{'anglElems':_0x57bbea[_0x249d06(0x373)],'anglZones':_0x57bbea[_0x249d06(0x282)],'anglPrims':_0x57bbea[_0x249d06(0x2e9)],'anglClies':_0x57bbea[_0x249d06(0x361)],'anglGrtxs':_0x57bbea['anglgrtx']},[_0x57bbea,_0x3ed4a1]),_0x1b1de0={'anglElems':_0x1ce738,'anglZones':_0x4d85dc,'anglPrims':_0x4f7e93,'anglClies':_0x3394cf,'anglGrtxs':_0x1a6d23,'selectedElem':_0x270492,'setSelectedElem':_0x35000a,'hoveredElem':_0x1333fa,'setHoveredElem':_0x56699e,'updateAnglPrim':(_0x41a5f5,_0x4bf650,_0x30bebd)=>{const _0x1d07c5=_0x249d06;_0x3b6dc3(_0x40b44c=>({..._0x40b44c,'anglprim':_0x40b44c[_0x1d07c5(0x2e9)][_0x1d07c5(0x2b4)](_0x3634db=>_0x3634db[_0x1d07c5(0x266)]===_0x41a5f5?{..._0x3634db,[_0x4bf650]:_0x30bebd}:_0x3634db)}));},'updateAnglElem':(_0x3302f4,_0x5856cd,_0x43bfa2,_0x3920c4)=>{const _0x263101=_0x249d06;_0x3b6dc3(_0x9dbc4=>({..._0x9dbc4,'anglelem':_0x9dbc4[_0x263101(0x373)]['map'](_0x2a3526=>_0x2a3526['TREEID']===_0x5856cd&&_0x2a3526[_0x263101(0x266)]===_0x3302f4?{..._0x2a3526,[_0x43bfa2]:_0x3920c4}:_0x2a3526)}));},'updateAnglZone':(_0x4635e8,_0x5f1943,_0x4f4a3c,_0x2e01af)=>{const _0x90eec=_0x249d06;_0x3b6dc3(_0x508d3a=>({..._0x508d3a,'anglzone':_0x508d3a[_0x90eec(0x282)][_0x90eec(0x2b4)](_0xd3426f=>_0xd3426f[_0x90eec(0x200)]===_0x5f1943&&_0xd3426f[_0x90eec(0x266)]===_0x4635e8?{..._0xd3426f,[_0x4f4a3c]:_0x2e01af}:_0xd3426f)}));},'updateAnglClie':(_0x2d12f3,_0x3e0c08,_0x1f2f1d,_0x16f926,_0x271be5)=>{const _0x354dba=_0x249d06;_0x3b6dc3(_0x37cc85=>({..._0x37cc85,'anglclie':_0x37cc85[_0x354dba(0x361)][_0x354dba(0x2b4)](_0x4720be=>_0x4720be[_0x354dba(0x200)]===_0x3e0c08&&_0x4720be['TAGNAME']===_0x1f2f1d&&_0x4720be['DATATYPE']===_0x271be5&&_0x4720be[_0x354dba(0x266)]===_0x2d12f3?{..._0x4720be,'TAGVALUE':_0x16f926,'DATE_LASTCHANGE':new Date()[_0x354dba(0x3a0)]()}:_0x4720be)}));},'updateAnglGrtx':(_0x4e4512,_0x3d6b2a,_0x1cd8b6,_0x2e2198)=>{const _0x63c802=_0x249d06;_0x3b6dc3(_0x54992b=>({..._0x54992b,'anglgrtx':_0x54992b[_0x63c802(0x2f1)][_0x63c802(0x2b4)](_0x1c3ad7=>_0x1c3ad7[_0x63c802(0x200)]===_0x3d6b2a&&_0x1c3ad7[_0x63c802(0x356)]===_0x1cd8b6&&_0x1c3ad7[_0x63c802(0x266)]===_0x4e4512?{..._0x1c3ad7,'TEXT':_0x2e2198,'DATE_LASTCHANGE':new Date()[_0x63c802(0x3a0)]()}:_0x1c3ad7)}));},'getArticleData':_0xf3a809,'allData':_0x57bbea};return c[_0x249d06(0x345)](O[_0x249d06(0x245)],{'value':_0x1b1de0,'children':_0xe8a623});}const fe=M[a0_0x235465(0x25e)](null);function me({children:_0x1e13d8,articleName:_0x14dd85,dimensionOverrides:_0x40fc83}){const _0x3c9539=a0_0x235465,_0x4c0de6={'articleName':_0x14dd85,'dimensionOverrides':_0x40fc83};return c[_0x3c9539(0x345)](fe[_0x3c9539(0x245)],{'value':_0x4c0de6,'children':_0x1e13d8});}const pe=M[a0_0x235465(0x25e)](void 0x0);var L=(_0xec4a1b=>(_0xec4a1b[_0xec4a1b[a0_0x235465(0x321)]=0x3]=a0_0x235465(0x321),_0xec4a1b[_0xec4a1b['Material']=0x4]='Material',_0xec4a1b[_0xec4a1b[a0_0x235465(0x1f7)]=0x64]='Numeric',_0xec4a1b[_0xec4a1b['Text']=0x78]=a0_0x235465(0x27e),_0xec4a1b))(L||{});function he(_0x5bde22){const _0x1258eb=a0_0x235465;return new Map(_0x5bde22[_0x1258eb(0x2b4)](_0x520da4=>[_0x520da4[_0x1258eb(0x266)],_0x520da4]));}function ae(_0x49c55a,_0x2ca930,_0x37f8c5=new Set()){const _0xff9983=a0_0x235465,_0x53f0e3=_0x2ca930['get'](_0x49c55a);if(!_0x53f0e3)return;if(_0x37f8c5[_0xff9983(0x312)](_0x49c55a)){console[_0xff9983(0x3bc)](_0xff9983(0x38c)+[..._0x37f8c5,_0x49c55a]['join'](_0xff9983(0x204)));return;}const _0x506b36=_0x53f0e3[_0xff9983(0x387)];if(_0x506b36[_0xff9983(0x395)]('$')&&_0x53f0e3['TYP']!=L[_0xff9983(0x27e)]){const _0x2fda24=_0x506b36[_0xff9983(0x2ba)](0x1);return _0x37f8c5[_0xff9983(0x209)](_0x49c55a),ae(_0x2fda24,_0x2ca930,_0x37f8c5);}const _0x20088e=Number(_0x506b36);return isNaN(_0x20088e)?_0x506b36:_0x20088e;}function Ae(_0x499d02,_0x750efb,_0x21d455){const _0x48481e=a0_0x235465,_0xc9089f=_0x21d455[_0x48481e(0x233)](_0x499d02);if(!_0xc9089f)return console[_0x48481e(0x207)](_0x48481e(0x29c)+_0x499d02+_0x48481e(0x29b)),_0x21d455;const _0x35e063=new Map(_0x21d455);return _0x35e063[_0x48481e(0x328)](_0x499d02,{..._0xc9089f,'WERT':String(_0x750efb)}),_0x35e063;}function de(_0x5dfde6,_0x5600ff){const _0x570ae0=a0_0x235465;return _0x5dfde6[_0x570ae0(0x3c1)](/\$([A-Za-z_][A-Za-z0-9_]*)/g,(_0x5dc3c0,_0xa9d80d)=>{const _0x3cdeb8=ae(_0xa9d80d,_0x5600ff);return _0x3cdeb8!==void 0x0?String(_0x3cdeb8):_0x5dc3c0;});}function ge(_0x18369e){const _0x2777d4=a0_0x235465;return/\$[A-Za-z_][A-Za-z0-9_]*/g[_0x2777d4(0x1f8)](_0x18369e);}function Ye(_0x1aed6c){const _0x1fc61c=a0_0x235465,_0x44a53e=_0x1aed6c[_0x1fc61c(0x255)](/\$([A-Za-z_][A-Za-z0-9_]*)/g);return Array[_0x1fc61c(0x33e)](_0x44a53e,_0x3d838c=>_0x3d838c[0x1]);}const We=Object[a0_0x235465(0x284)](Object[a0_0x235465(0x311)]({'__proto__':null,'createVariableTree':he,'extractVariableNames':Ye,'getValue':ae,'hasVariables':ge,'resolveString':de,'setValue':Ae},Symbol[a0_0x235465(0x363)],{'value':a0_0x235465(0x324)}));function Ce({children:_0x4e0480,imosVariables:_0xefe4e0}){const _0x31dbd0=a0_0x235465,[_0x1070ab,_0x270c33]=M[_0x31dbd0(0x259)](()=>he(_0xefe4e0));M[_0x31dbd0(0x348)](()=>{_0x270c33(he(_0xefe4e0));},[_0xefe4e0]);const _0x14a255=M[_0x31dbd0(0x289)]((_0x41272b,_0x45ec9a)=>{_0x270c33(_0x739648=>Ae(_0x41272b,_0x45ec9a,_0x739648));},[]),_0x5b072d={'tree':_0x1070ab,'setValue':_0x14a255};return c[_0x31dbd0(0x345)](pe[_0x31dbd0(0x245)],{'value':_0x5b072d,'children':_0x4e0480});}const xe=M[a0_0x235465(0x25e)](null),Me=_0x4782a0=>{const _0x35e73d=Number(_0x4782a0);return isNaN(_0x35e73d)?null:_0x35e73d;},Z=_0x43ca02=>_0x43ca02==null?'':String(_0x43ca02),V=(_0x471ad1,_0x3661c9,_0x4b348a)=>{const _0x45bff7=Me(_0x471ad1),_0x49b350=Me(_0x3661c9);return _0x45bff7===null||_0x49b350===null?!0x1:_0x4b348a(_0x45bff7,_0x49b350);},U=(_0x2d3eaa,_0x8de883,_0x37a881)=>_0x2d3eaa==null||_0x8de883==null?!0x1:_0x37a881(Z(_0x2d3eaa),Z(_0x8de883)),Xe={'=':(_0x54661d,_0x3ef4e0)=>_0x54661d==null||_0x3ef4e0==null?_0x54661d===_0x3ef4e0:Z(_0x54661d)['trim']()===Z(_0x3ef4e0)[a0_0x235465(0x2ca)](),'!=':(_0x416a60,_0x1a54e7)=>_0x416a60==null||_0x1a54e7==null?_0x416a60!==_0x1a54e7:Z(_0x416a60)[a0_0x235465(0x2ca)]()!==Z(_0x1a54e7)[a0_0x235465(0x2ca)](),'>':(_0x335599,_0x50b613)=>V(_0x335599,_0x50b613,(_0x2894c3,_0x5ec25b)=>_0x2894c3>_0x5ec25b),'<':(_0x50dc13,_0x2b6be5)=>V(_0x50dc13,_0x2b6be5,(_0x9bea32,_0x5cf171)=>_0x9bea32<_0x5cf171),'>=':(_0x5e752b,_0x5d79eb)=>V(_0x5e752b,_0x5d79eb,(_0x3882d8,_0x36190e)=>_0x3882d8>=_0x36190e),'<=':(_0x4ca214,_0x28b1ad)=>V(_0x4ca214,_0x28b1ad,(_0x12ed78,_0x27a80e)=>_0x12ed78<=_0x27a80e),'&gt;':(_0x74911d,_0x246847)=>V(_0x74911d,_0x246847,(_0x1c947e,_0x55b8a7)=>_0x1c947e>_0x55b8a7),'&gt;=':(_0x3d2690,_0x141c7b)=>V(_0x3d2690,_0x141c7b,(_0x5ee933,_0x5c46ca)=>_0x5ee933>=_0x5c46ca),'&lt;':(_0x5495ef,_0x1b9f4a)=>V(_0x5495ef,_0x1b9f4a,(_0x2bd423,_0x59b52f)=>_0x2bd423<_0x59b52f),'&lt;=':(_0x336c2a,_0x5d66d3)=>V(_0x336c2a,_0x5d66d3,(_0x29b4a6,_0x5cc575)=>_0x29b4a6<=_0x5cc575),'B':(_0x30fd16,_0x4eb44b)=>U(_0x30fd16,_0x4eb44b,(_0x27c4f9,_0x4f6a61)=>_0x27c4f9[a0_0x235465(0x395)](_0x4f6a61)),'!B':(_0x20d561,_0x1acca0)=>U(_0x20d561,_0x1acca0,(_0x5d4ce1,_0x5cba68)=>!_0x5d4ce1[a0_0x235465(0x395)](_0x5cba68)),'E':(_0x45dc79,_0x2e9901)=>U(_0x45dc79,_0x2e9901,(_0xdbd2ed,_0x19536f)=>_0xdbd2ed['endsWith'](_0x19536f)),'!E':(_0x138f4d,_0x5cde5f)=>U(_0x138f4d,_0x5cde5f,(_0xe9afe5,_0x4750fd)=>!_0xe9afe5['endsWith'](_0x4750fd)),'C':(_0x15cf59,_0xbbc465)=>U(_0x15cf59,_0xbbc465,(_0x11ee72,_0x21e18c)=>_0x11ee72['includes'](_0x21e18c)),'!C':(_0xc7c06a,_0x5d62ed)=>U(_0xc7c06a,_0x5d62ed,(_0x2b91c1,_0x16ea09)=>!_0x2b91c1['includes'](_0x16ea09))},qe={'Zusatzfilter\x203':a0_0x235465(0x2d2),'Zusatzfilter\x204':'filter4'};function we(_0x77343f,_0x31c649={}){const _0x5df5fe=a0_0x235465,{variableTree:_0x1e7df2,dataType:_0x311ec1,silent:_0x266297=!0x1,allowFunctions:_0x348285=!0x0}=_0x31c649,_0x7c6693=/^(.+?)\s*(mm|cm|m|in|ft|px|pt|%|deg|rad)$/i,_0xbe14b9={'value':void 0x0,'original':_0x77343f,'resolved':_0x77343f,'hadVariables':!0x1,'wasEvaluated':!0x1};try{let _0x2963f7=_0x77343f[_0x5df5fe(0x2ca)](),_0x48f4c3;if(_0x7c6693[_0x5df5fe(0x1f8)](_0x2963f7)){const _0x49a7e6=_0x2963f7[_0x5df5fe(0x287)](_0x7c6693);_0x49a7e6&&(_0x2963f7=_0x49a7e6[0x1][_0x5df5fe(0x2ca)](),_0x48f4c3=_0x49a7e6[0x2]);}_0x1e7df2&&ge(_0x2963f7)&&(_0xbe14b9[_0x5df5fe(0x2c3)]=!0x0,_0x2963f7=de(_0x2963f7,_0x1e7df2),_0xbe14b9[_0x5df5fe(0x256)]=_0x2963f7),Le(_0x2963f7)?(_0xbe14b9[_0x5df5fe(0x20c)]=!0x0,_0xbe14b9[_0x5df5fe(0x26a)]=Oe(_0x2963f7,_0x348285)):Ee(_0x2963f7)?(_0xbe14b9[_0x5df5fe(0x20c)]=!0x0,_0xbe14b9['value']=Se(_0x2963f7,_0x348285)):_0xbe14b9['value']=Qe(_0x2963f7,_0x311ec1);}catch(_0x1e6078){_0xbe14b9[_0x5df5fe(0x3bc)]=_0x1e6078 instanceof Error?_0x1e6078['message']:String(_0x1e6078),_0x266297||console[_0x5df5fe(0x3bc)](_0x5df5fe(0x217)+_0x77343f+'\x22',_0x1e6078),_0xbe14b9[_0x5df5fe(0x26a)]=_0x77343f;}return _0xbe14b9;}function ie(_0x2762ac,_0x32a32c={}){const _0x4e7b90=a0_0x235465;return we(_0x2762ac,_0x32a32c)[_0x4e7b90(0x26a)];}function Le(_0x4d4534){const _0x35ec9f=a0_0x235465;return!_0x4d4534||typeof _0x4d4534!=_0x35ec9f(0x285)?!0x1:/^\s*IF\s*\(/i['test'](_0x4d4534['trim']());}function Oe(_0x75ca9e,_0x41c778=!0x0){const _0x15d4d4=a0_0x235465,_0x57e402=_0x75ca9e['trim']()['match'](/^IF\s*\((.*)\)\s*$/i);if(!_0x57e402)throw new Error('Invalid\x20IF\x20statement:\x20'+_0x75ca9e);const _0x5e9dfc=_0x57e402[0x1],_0x3f26c4=Je(_0x5e9dfc);if(_0x3f26c4[_0x15d4d4(0x2e1)]!==0x3)throw new Error(_0x15d4d4(0x367)+_0x3f26c4[_0x15d4d4(0x2e1)]+_0x15d4d4(0x28e));const [_0x5a8f03,_0x99029a,_0x460a3e]=_0x3f26c4,_0x1b45b3=te(_0x5a8f03[_0x15d4d4(0x2ca)](),_0x41c778)?_0x99029a[_0x15d4d4(0x2ca)]():_0x460a3e[_0x15d4d4(0x2ca)]();if(Le(_0x1b45b3))return Oe(_0x1b45b3,_0x41c778);if(Ee(_0x1b45b3))return Se(_0x1b45b3,_0x41c778);{const _0x127e19=Number(_0x1b45b3);return isNaN(_0x127e19)?_0x1b45b3:_0x127e19;}}function a0_0x4094(){const _0x17d18c=['nodes','var-controller__stats','anglprim','bog2deg','mm2in','BoxGeometry','toFixed','var-controller__var-name','2D_FRONT','1926400fjYrnp','anglgrtx','DATATYPE','front\x20','round','some','table','BRACKET_OPEN','7178PLpZnD','Math.pow(','left','SpecialVariable','factor','blue','bottomShelfThk','LEFT_ANGLE_BRACKET','isRepeated','tan','article','thead','ExtrudeGeometry','Failed\x20to\x20evaluate\x20expression:\x20','Expression\x20did\x20not\x20evaluate\x20to\x20a\x20number:\x20','15%','unsupported\x20node\x20type:\x20','sin','filter','dividerType','react/jsx-runtime','MATHEMATICAL_FUNCTIONS','No\x20prims\x20found\x20for\x20article:\x20','nodeNum','tree','defineProperty','has','toUpperCase','evaluateBinaryExpression','bind','EvaluationError','nestingLevel','Evaluation\x20Error:\x20','values','includes','anglGrtxs','scanVariable','children','target','NOT\x20OR','lineTo','Surface','\x20x\x20','findAllMatches','Module','INSETFOR','lightgray','lastIndexOf','set','=========================================================\x20\x20Designer\x20\x20\x20===============================================================================================','Failed\x20to\x20parse\x20term:\x20','DIVDIR','delete','rotateZ','articleDescriptor','sizerefout1','section','log10','EOF','3Grcreh','updatedDivider','Invalid\x20usage:\x20\x22n\x22\x20cannot\x20appear\x20on\x20the\x20right-hand\x20side\x20of\x20an\x20operator','operation','find','OPSTRING','cache','Material','DIMCALCFZ','source','Designer','from','Angle\x20brackets\x20are\x20not\x20allowed\x20in\x20the\x20input\x20string','var-controller__number-input','divisionType','split','hasMillimeterSuffix','calculateSections','jsx','rotate(','sort','useEffect','Math.abs(','IAC_TOPSHELFTHICKNESS','VARIABLE','HORDEFTYPE','Unknown\x20error','peekNext','Section','reference','_3D','DescriptorProvider','UNIT','lexeme','endPanelThk','NUM','resetCurrent','cumulativeZ','var-controller','useContext','localeCompare','tokens','PAREN_CLOSE','1696496rlaUiI','LEFTVALUE','operator','anglclie','Math.min(','toStringTag','BRACKET_CLOSE','get2DFront','isAtEnd','IF\x20statement\x20must\x20have\x20exactly\x203\x20parts:\x20IF(condition,\x20trueValue,\x20falseValue).\x20Got:\x20','isArray','Repeated','\x20-\x20','substring','\x20\x20\x20--\x20\x20','evaluateFunction','jsxs','descriptor','isDigit','STARTTRIM','\x20divider','anglelem','Surfaces','meshStandardMaterial','descriptorName','term','Materials','isVariable','stringify','Unhandled\x20case:\x20HORDEFTYPE\x20=\x20','previous','1.0.0','IAC_THICKNESS','sizerefout2','var-controller__section-title','isAlpha','No\x20variables\x20defined.','BOTTRIM','accumulateIncorporatedThicknesses','Expected\x20Sections\x20or\x20Section,\x20got\x20','center','WERT','1eebwMo','Error\x20calculating\x20sections','label','valueSource','Circular\x20dependency:\x20','abs','SIZEX','linearDivisionString','depth','undefined','LINEAR_DIVISION','IAC_BOTTOMSHELFTHICKNESS','atan','startsWith','translate(','Variable','symbol','Expected\x20digit\x20after\x20decimal\x20point\x20at\x20position:\x20','findAllNonDefaultMatches','Variable\x20name\x20cannot\x20be\x20empty\x20or\x20$mm','childPositions','Sections','size','Edges','toISOString','black','lindiv','useVariables\x20must\x20be\x20used\x20within\x20a\x20VariableProvider','Current\x20Value','oversize','errors','1421616ZiIJYG','cos','Back\x20','Shape','INSET','Expected\x20\x27>\x27\x20after\x20section\x20expression.','right','DESCRIPTOR','OPERATOR','DescriptorContext','useDescriptorMatches','useVariables','useDescriptorEvaluation','cumulativeY','\x20=====================================','Empty\x20input\x20string','CPNAME','Invalid\x20Operator','asin','variableTree','current','error','start','width','Failed\x20to\x20parse\x20expression:\x20',')\x20rotate(90)','replace','ENDOFFS','DESC_TYPE','isNumberLiteral','Descriptor\x20not\x20found:\x20','ARTICLE','Error\x20in\x20section\x20','Expected\x20expression\x20inside\x20parentheses.','rotation','useMemo','Numeric','test','rawType','divided_length_list','Math.max(','number','35%','useDescriptorManager','message','TREEID','VIEW','Math.sqrt(','fromEntries','\x20->\x20','PAREN_OPEN','Variable\x20Controller','warn','linearDivisionDescriptor','add','conditionTree','inset','wasEvaluated','BRACE_CLOSE','BOTOFFS','positions','useZoneSelection\x20must\x20be\x20used\x20within\x20DataProvider','data','log','SIZEY','floor','sizerefedg2','expr*{ratio}','[ExpressionResolver]\x20Failed\x20to\x20resolve:\x20\x22','hasDescriptor','reportError','react','advance','acos','Expected\x20\x27)\x27\x20after\x20expression.','bottomShelfCP','12570eQGajt','Unknown\x20operator:\x20','NumberLiteral','isGrouping','scanIdentifierOrFunction','checkMillimeterSuffix','cumulativeX','input','isSection','evaluate','topShelfThk','toLocaleLowerCase','endsWith','mesh','MANINFO','arg','VarController','toRepeat','parse','scale(1,-1)','get','sizerefedg1','entries','fill','peek','rotateY','comparison','getDescriptor','conditionId','currentZone','Empty\x20expression','get2DTop','boxGeometry','#ff6b00','evaluateNode','DIVTYPE',')\x20rotate(0)','BinaryExpression','Provider','TAGNAME','evaluateTree',')\x20rotate(','LINDIV1','RIGHT_ANGLE_BRACKET','Unexpected\x20character:\x20','variables','tbody','isUnaryExpression','830628JPuXVl','Expected\x20\x27}\x27\x20after\x20expression.','descriptors','scan','roots','times','matchAll','resolved','toString','Expected\x20\x27(\x27\x20after\x20function\x20name\x20\x27','useState','back','isBinaryExpression','useArticle\x20must\x20be\x20used\x20within\x20an\x20ArticleProvider','moveTo','createContext','height','keys','name','linearDivision','STRING','VariableResolver','ENDTRIM','NAME','evaluateSections','thickness','charAt','value','startPanelThk','var-controller__slider','Function\x20not\x20implemented','bevel','prim_dims','primary','getDescriptorsByType','div','DIMCALCFX','dimensions','type','DataProvider','AND','Math.round(','fromZoneData','consumeMillimeterSuffix','_2D_FRONT','scanNumber','zone_dims','Text','kind','useDescriptorManager\x20must\x20be\x20used\x20within\x20a\x20DescriptorProvider','getClieThk','anglzone','TAGVALUE','freeze','string','DIVIDER','match','\x20variables','useCallback','SIZEZ','Fragment','simple','Dimensions\x20(Numeric)','\x20parts','spreadMm','VERSION','ZoneDescriptor','var-controller__slider-container','Invalid\x20condition:\x20','front','zoneInfo','in2mm','84yxXYsN','position','check','Unknown\x20error\x20during\x20evaluation.','\x20not\x20found','Variable\x20','join','consume','left\x20','top','evaluateVariable','addToken','FUNCTION','thk','\x20is\x20not\x20defined.','middle','NUMBER','useArticle','path','var-controller__reference','group','next','var-controller__section','COMPARISONTYPE','BOTSHELF','isInsideGroup','Cannot\x20have\x20n\x20in\x20the\x20right\x20side\x20of\x20an\x20expression','isFunctionCall','bottom','map','reduce','scanMm','Unhandled\x20case:\x20DIVDIR\x20=\x20','getDescriptorNames','TEXT','slice','every','independent','right\x20','performParse','DIVELEM1','SPECIAL_VARIABLE','Grouping','UnaryExpression','hadVariables','text','FunctionCall','get3D','AD\x20article\x20width','DataContext','Variable\x20Name','trim','Math.floor(','Bot\x20','Error\x20in\x20function\x20arguments','TOPOFFS','reverse','end','push','filter3','resetState','TOPTRIM','Unexpected\x20token:\x20','TYP','linear-division','ArticleProvider','Total\x20variables:\x20','sections','#0066ff','expression','\x20at\x20position:\x20','25%','_2D_TOP','1137888MZXXFV','length','forEach','BRACE_OPEN','cannot\x20have\x20*\x20outside\x20of\x20group','Type','topShelfCP'];a0_0x4094=function(){return _0x17d18c;};return a0_0x4094();}function Je(_0x4fbe7d){const _0x4e7567=a0_0x235465,_0x15b678=[];let _0x31c0b4='',_0xad316=0x0;for(let _0x1ff73a=0x0;_0x1ff73a<_0x4fbe7d[_0x4e7567(0x2e1)];_0x1ff73a++){const _0x3dea87=_0x4fbe7d[_0x1ff73a];_0x3dea87==='('?(_0xad316++,_0x31c0b4+=_0x3dea87):_0x3dea87===')'?(_0xad316--,_0x31c0b4+=_0x3dea87):_0x3dea87===','&&_0xad316===0x0?(_0x15b678[_0x4e7567(0x2d1)](_0x31c0b4),_0x31c0b4=''):_0x31c0b4+=_0x3dea87;}return _0x31c0b4&&_0x15b678[_0x4e7567(0x2d1)](_0x31c0b4),_0x15b678;}function te(_0x379773,_0x39fcc5){const _0x52b135=a0_0x235465;if(/\bAND\b/i[_0x52b135(0x1f8)](_0x379773))return _0x379773[_0x52b135(0x342)](/\bAND\b/i)[_0x52b135(0x2bb)](_0x47875d=>te(_0x47875d[_0x52b135(0x2ca)](),_0x39fcc5));if(/\bOR\b/i[_0x52b135(0x1f8)](_0x379773))return _0x379773[_0x52b135(0x342)](/\bOR\b/i)['some'](_0xda300=>te(_0xda300[_0x52b135(0x2ca)](),_0x39fcc5));if(/^\s*NOT\s+/i['test'](_0x379773)){const _0x120dc3=_0x379773[_0x52b135(0x3c1)](/^\s*NOT\s+/i,'')['trim']();return!te(_0x120dc3,_0x39fcc5);}const _0x3e5e6c=_0x379773[_0x52b135(0x287)](/(.+?)(<=|>=|!=|<>|=|<|>)(.+)/);if(!_0x3e5e6c)throw new Error(_0x52b135(0x293)+_0x379773);const [,_0x33c1ce,_0x5ffbb,_0x27321d]=_0x3e5e6c,_0xd81ef7=ye(_0x33c1ce[_0x52b135(0x2ca)](),_0x39fcc5),_0x51be59=ye(_0x27321d[_0x52b135(0x2ca)](),_0x39fcc5);switch(_0x5ffbb){case'=':return _0xd81ef7===_0x51be59;case'!=':case'<>':return _0xd81ef7!==_0x51be59;case'<':return _0xd81ef7<_0x51be59;case'>':return _0xd81ef7>_0x51be59;case'<=':return _0xd81ef7<=_0x51be59;case'>=':return _0xd81ef7>=_0x51be59;default:throw new Error(_0x52b135(0x220)+_0x5ffbb);}}function ye(_0x2924c3,_0x35fc07){const _0x3029ba=a0_0x235465;if(_0x2924c3['startsWith']('\x22')&&_0x2924c3[_0x3029ba(0x22b)]('\x22')||_0x2924c3['startsWith']('\x27')&&_0x2924c3[_0x3029ba(0x22b)]('\x27'))return _0x2924c3[_0x3029ba(0x2ba)](0x1,-0x1);if(Ee(_0x2924c3))return Se(_0x2924c3,_0x35fc07);const _0x18ea3f=Number(_0x2924c3);return isNaN(_0x18ea3f)?_0x2924c3:_0x18ea3f;}function Ee(_0x334518){const _0x46844f=a0_0x235465;if(!_0x334518||typeof _0x334518!='string')return!0x1;const _0x5567e9=_0x334518['trim']();return/[+\-*/()]/['test'](_0x5567e9)?/^[\d\s+\-*/().,a-z]+$/i[_0x46844f(0x1f8)](_0x5567e9):!0x1;}const le=new Map();function Se(_0x47c0bd,_0x148dd5=!0x0){const _0x490e00=a0_0x235465,_0xcc262c=_0x47c0bd[_0x490e00(0x2ca)](),_0x5c36ed=_0xcc262c+':'+_0x148dd5;if(le[_0x490e00(0x312)](_0x5c36ed))return le[_0x490e00(0x233)](_0x5c36ed);let _0x4e86ff=_0xcc262c[_0x490e00(0x3c1)](/\s+/g,'');if(_0x148dd5&&(_0x4e86ff=_0x4e86ff[_0x490e00(0x3c1)](/round\(/g,_0x490e00(0x278))[_0x490e00(0x3c1)](/floor\(/g,_0x490e00(0x2cb))[_0x490e00(0x3c1)](/ceil\(/g,'Math.ceil(')[_0x490e00(0x3c1)](/abs\(/g,_0x490e00(0x349))[_0x490e00(0x3c1)](/min\(/g,_0x490e00(0x362))[_0x490e00(0x3c1)](/max\(/g,_0x490e00(0x1fb))['replace'](/pow\(/g,_0x490e00(0x2f9))[_0x490e00(0x3c1)](/sqrt\(/g,_0x490e00(0x202))),!(_0x148dd5?/^[\d+\-*/().,a-zA-Z]+$/:/^[\d+\-*/().]+$/)[_0x490e00(0x1f8)](_0x4e86ff))throw new Error('Expression\x20contains\x20invalid\x20characters:\x20'+_0x47c0bd);if(!_0x4e86ff)throw new Error(_0x490e00(0x23d));try{const _0x1bf08e=Function('\x27use\x20strict\x27;\x20return\x20('+_0x4e86ff+')')();if(typeof _0x1bf08e!=_0x490e00(0x1fc)||isNaN(_0x1bf08e))throw new Error(_0x490e00(0x306)+_0x47c0bd);return le[_0x490e00(0x328)](_0x5c36ed,_0x1bf08e),_0x1bf08e;}catch(_0x68285c){throw new Error(_0x490e00(0x305)+_0x47c0bd+_0x490e00(0x36a)+_0x68285c);}}function Qe(_0x197a90,_0x3e9be7){const _0x559fa1=a0_0x235465;if(!_0x3e9be7){const _0x36a0bc=Number(_0x197a90);return isNaN(_0x36a0bc)?_0x197a90:_0x36a0bc;}switch(_0x3e9be7[_0x559fa1(0x313)]()){case'FL':return parseFloat(_0x197a90);case'IN':return parseInt(_0x197a90,0xa);case'CI':case'CS':case'ST':return _0x197a90;case'DA':return new Date(_0x197a90)[_0x559fa1(0x3a0)]();default:const _0x122bd5=Number(_0x197a90);return isNaN(_0x122bd5)?_0x197a90:_0x122bd5;}}const et=_0x16a030=>qe[_0x16a030]||_0x16a030,K=class K{};A(K,a0_0x235465(0x247),(_0x566dac,_0x22e33b,_0x3efc59)=>_0x566dac?_0x566dac[a0_0x235465(0x253)][a0_0x235465(0x2bb)](_0x5d7dad=>K[a0_0x235465(0x241)](_0x5d7dad,_0x22e33b,_0x3efc59)):!0x1),A(K,'evaluateNode',(_0x27af42,_0x2418d8,_0x5eeaa5)=>{const _0x32f363=a0_0x235465;if(!_0x27af42)return!0x1;if(_0x27af42[_0x32f363(0x27f)]===_0x32f363(0x239)){let _0x3e1c64=_0x27af42[_0x32f363(0x211)][_0x32f363(0x35f)];const _0x3e2816=et(_0x27af42['data']['LEFTVALUE']);_0x2418d8[_0x3e2816]!==void 0x0?_0x3e1c64=_0x2418d8[_0x3e2816]:_0x3e1c64=ie(_0x27af42[_0x32f363(0x211)][_0x32f363(0x35f)],{'variableTree':_0x5eeaa5,'dataType':_0x27af42[_0x32f363(0x211)][_0x32f363(0x2f2)],'silent':!0x0});const _0x349300=ie(_0x27af42['data']['RIGHTVALUE'],{'variableTree':_0x5eeaa5,'dataType':_0x27af42[_0x32f363(0x211)][_0x32f363(0x2f2)],'silent':!0x0});return Xe[_0x27af42['data'][_0x32f363(0x2ae)]](_0x3e1c64,_0x349300);}if(_0x27af42['kind']===_0x32f363(0x336)){const _0x113ea3=_0x27af42[_0x32f363(0x31d)][_0x32f363(0x2b4)](_0x3f60e8=>K['evaluateNode'](_0x3f60e8,_0x2418d8,_0x5eeaa5));switch(_0x27af42['data'][_0x32f363(0x338)]){case _0x32f363(0x277):return _0x113ea3[_0x32f363(0x2bb)](Boolean);case'OR':return _0x113ea3[_0x32f363(0x2f5)](Boolean);case'NOT':return!_0x113ea3[_0x32f363(0x2bb)](Boolean);case _0x32f363(0x31f):return!_0x113ea3[_0x32f363(0x2f5)](Boolean);default:return!0x1;}}return!0x1;});let se=K;class Ie{static[a0_0x235465(0x228)](_0x261926,_0x426ef4,_0x329a6f){const _0x4bb579=a0_0x235465,_0x2c733b=_0x261926[_0x4bb579(0x2e7)][_0x4bb579(0x337)](_0x1b2133=>_0x1b2133[_0x4bb579(0x23b)]===0x0||_0x1b2133[_0x4bb579(0x20a)]===null);for(const _0x4759ed of _0x261926[_0x4bb579(0x2e7)]){if(_0x4759ed[_0x4bb579(0x23b)]===0x0||_0x4759ed['conditionTree']===null)continue;if(se[_0x4bb579(0x247)](_0x4759ed['conditionTree'],_0x426ef4,_0x329a6f))return{'lindiv':_0x4759ed[_0x4bb579(0x3a2)],'nodeNum':_0x4759ed[_0x4bb579(0x30f)],'matched':!0x0,'isDefault':!0x1,'descriptorType':_0x261926['descriptor'][_0x4bb579(0x1ef)]};}if(_0x2c733b)return{'lindiv':_0x2c733b[_0x4bb579(0x3a2)],'nodeNum':_0x2c733b[_0x4bb579(0x30f)],'matched':!0x1,'isDefault':!0x0,'descriptorType':_0x261926['descriptor'][_0x4bb579(0x1ef)]};throw new Error('No\x20matching\x20node\x20found\x20and\x20no\x20default\x20node\x20exists');}static[a0_0x235465(0x39a)](_0x16fe38,_0x25bb5a,_0x5dc25e){const _0x24f805=a0_0x235465,_0x385804=[];for(const _0xccf838 of _0x16fe38[_0x24f805(0x2e7)]){if(_0xccf838['conditionId']===0x0||_0xccf838[_0x24f805(0x20a)]===null)continue;se[_0x24f805(0x247)](_0xccf838[_0x24f805(0x20a)],_0x25bb5a,_0x5dc25e)&&_0x385804[_0x24f805(0x2d1)](_0xccf838);}return _0x385804;}}class tt{constructor(_0x4680b3,_0x54e05d){const _0x10c40c=a0_0x235465;A(this,_0x10c40c(0x251)),A(this,'variableTree'),(this[_0x10c40c(0x251)]=new Map(_0x4680b3['map'](_0x138f63=>[_0x138f63[_0x10c40c(0x36f)][_0x10c40c(0x266)],_0x138f63])),this[_0x10c40c(0x3ba)]=_0x54e05d);}[a0_0x235465(0x228)](_0x4d1743,_0x39d139){const _0x17ed70=a0_0x235465,_0x2ab7de=this[_0x17ed70(0x23a)](_0x4d1743);if(!_0x2ab7de)throw new Error(_0x17ed70(0x1f1)+_0x4d1743);return Ie[_0x17ed70(0x228)](_0x2ab7de,_0x39d139,this[_0x17ed70(0x3ba)]);}[a0_0x235465(0x23a)](_0x3020f3){const _0x2a372a=a0_0x235465;return this['descriptors'][_0x2a372a(0x233)](_0x3020f3);}[a0_0x235465(0x218)](_0x49a687){const _0x55a293=a0_0x235465;return this[_0x55a293(0x251)][_0x55a293(0x312)](_0x49a687);}['getDescriptorNames'](){const _0x4d8598=a0_0x235465;return Array[_0x4d8598(0x33e)](this[_0x4d8598(0x251)][_0x4d8598(0x260)]());}[a0_0x235465(0x271)](_0x5e6578){const _0x4d2d2a=a0_0x235465;return Array[_0x4d2d2a(0x33e)](this[_0x4d2d2a(0x251)][_0x4d2d2a(0x319)]())['filter'](_0x39eb40=>_0x39eb40[_0x4d2d2a(0x36f)][_0x4d2d2a(0x1ef)]===_0x5e6578);}[a0_0x235465(0x323)](_0x485d2d,_0x2d3feb){const _0x9e52e8=a0_0x235465,_0x14a849=this[_0x9e52e8(0x23a)](_0x485d2d);if(!_0x14a849)throw new Error(_0x9e52e8(0x1f1)+_0x485d2d);return Ie['findAllNonDefaultMatches'](_0x14a849,_0x2d3feb,this[_0x9e52e8(0x3ba)]);}['getStats'](){const _0x45505d=a0_0x235465,_0x374235={};for(const _0x71b780 of this['descriptors'][_0x45505d(0x319)]()){const _0x4a21ec=_0x71b780[_0x45505d(0x36f)]['DESC_TYPE'];_0x374235[_0x4a21ec]=(_0x374235[_0x4a21ec]||0x0)+0x1;}return{'total':this[_0x45505d(0x251)]['size'],'byType':_0x374235,'names':this[_0x45505d(0x2b8)]()};}}function z(){const _0x345c2a=a0_0x235465,_0x17f4db=M['useContext'](pe);if(!_0x17f4db)throw new Error(_0x345c2a(0x3a3));const {tree:_0x556cf7,setValue:_0x4ab32e}=_0x17f4db,_0x3df9d9=M[_0x345c2a(0x1f6)](()=>_0x4c9c5b=>ae(_0x4c9c5b,_0x556cf7),[_0x556cf7]),_0x29db89=M['useMemo'](()=>_0x8e76d6=>de(_0x8e76d6,_0x556cf7),[_0x556cf7]),_0x5235ab=M[_0x345c2a(0x1f6)](()=>_0x1dd2d3=>ge(_0x1dd2d3),[]);return{'tree':_0x556cf7,'getValue':_0x3df9d9,'resolveString':_0x29db89,'hasVariables':_0x5235ab,'setValue':_0x4ab32e};}function Pe({children:_0x1e15b6,descriptorData:_0x564444}){const _0xa9ab4e=a0_0x235465,_0x4a19db=z(),_0x3077ab=M[_0xa9ab4e(0x1f6)](()=>new tt(_0x564444,_0x4a19db[_0xa9ab4e(0x310)]),[_0x564444,_0x4a19db]);return c[_0xa9ab4e(0x345)](xe[_0xa9ab4e(0x245)],{'value':_0x3077ab,'children':_0x1e15b6});}var N=(_0x10dec0=>(_0x10dec0['_2D_TOP']='2D_TOP',_0x10dec0[a0_0x235465(0x27b)]=a0_0x235465(0x2ef),_0x10dec0[a0_0x235465(0x351)]='3D',_0x10dec0))(N||{});const ce=0x0,rt=0x1,Re=_0x516734=>_0x516734+'.0',Ve=_0x25d6b5=>_0x25d6b5+'.1',je=_0x4e60d6=>_0x4e60d6+'.2',Fe=_0x189571=>_0x189571+'.3',ve=_0x6b0887=>_0x6b0887[a0_0x235465(0x36b)](0x0,_0x6b0887['lastIndexOf']('.')),it=_0x18872b=>{const _0x172f9d=ve(_0x18872b),_0x2c6e49=($e(_0x18872b)+0x3)%0x4;return _0x172f9d+'.'+_0x2c6e49;},st=_0x5b32af=>{const _0x169f19=ve(_0x5b32af),_0x4c1659=($e(_0x5b32af)+0x1)%0x4;return _0x169f19+'.'+_0x4c1659;},$e=_0x5744b6=>parseInt(_0x5744b6[a0_0x235465(0x36b)](_0x5744b6['lastIndexOf']('.')+0x1)),Y={'IAC_THICKNESS':a0_0x235465(0x37e),'IAC_BOTTOMSHELFTHICKNESS':a0_0x235465(0x393),'IAC_TOPSHELFTHICKNESS':a0_0x235465(0x34a)},E=0x1;function W(){const _0x5e59a1=a0_0x235465,_0x166fe5=M[_0x5e59a1(0x35a)](O);if(_0x166fe5===void 0x0)throw new Error('useData\x20must\x20be\x20used\x20within\x20a\x20DataProvider');return _0x166fe5;}function X(){const _0x383e89=a0_0x235465,_0x24eb26=M[_0x383e89(0x35a)](fe);if(!_0x24eb26)throw new Error(_0x383e89(0x25c));return _0x24eb26;}function re(_0x482a41,_0x304b36,_0x23986a){const _0x26579e=a0_0x235465,{getArticleData:_0x3c48ae}=W(),{articleName:_0x2d0916}=X(),{anglClies:_0x2da093}=_0x3c48ae(_0x2d0916),_0xf082a1=_0x2da093['find'](_0x37d6ec=>_0x37d6ec[_0x26579e(0x200)]===_0x482a41&&_0x37d6ec[_0x26579e(0x2f2)]===_0x23986a&&_0x37d6ec[_0x26579e(0x246)]===_0x304b36);return _0xf082a1?{'thickness':Number(_0xf082a1[_0x26579e(0x283)])}:null;}function nt(_0x372b2f){const _0xf74983=a0_0x235465,{getArticleData:_0x5d5574}=W(),{resolveString:_0x36dea2}=z(),{articleName:_0x303e5e}=X(),_0x43ea7e=_0x5d5574(_0x303e5e)[_0xf74983(0x31b)];if(!_0x43ea7e)return null;const _0x21e81f=_0x43ea7e[_0xf74983(0x30a)](_0x5a1fc9=>_0x5a1fc9[_0xf74983(0x200)]===_0x372b2f),_0x5896b6=new Map();return _0x21e81f[_0xf74983(0x2b4)](_0x32d15b=>_0x5896b6['set']('AD\x20zone\x20info0'+(_0x32d15b[_0xf74983(0x356)]+0x1),_0x36dea2(_0x32d15b[_0xf74983(0x2b9)]))),{'zoneInfo':_0x5896b6};}function oe(_0x296be7){const _0x370ad7=a0_0x235465,{getArticleData:_0x55115b}=W(),{articleName:_0x1e38ff}=X(),{anglZones:_0xe0376c}=_0x55115b(_0x1e38ff),_0x3d0e9f=_0xe0376c['find'](_0x31eb71=>_0x31eb71['TREEID']===_0x296be7),_0x52b0d5=_0xe0376c[_0x370ad7(0x30a)](_0xe96ddd=>_0xe96ddd['TREEID'][_0x370ad7(0x36b)](0x0,_0xe96ddd[_0x370ad7(0x200)][_0x370ad7(0x327)]('.'))===_0x296be7);return _0x52b0d5[_0x370ad7(0x347)]((_0x39dd1c,_0x31be9e)=>_0x39dd1c[_0x370ad7(0x200)][_0x370ad7(0x35b)](_0x31be9e[_0x370ad7(0x200)],void 0x0,{'numeric':!0x0})),_0x3d0e9f?{'currentZone':_0x3d0e9f,'children':_0x52b0d5,get 'topShelfCP'(){return _0x3d0e9f?.['TOPSHELF'];},get 'bottomShelfCP'(){const _0x4b27b9=_0x370ad7;return _0x3d0e9f?.[_0x4b27b9(0x2af)];},'zoneInfo'(){return nt(_0x296be7)?.['zoneInfo'];},'getClieThk'(_0x179b0b,_0x53a55b){const _0x54e54c=_0x370ad7;return this['topShelfCP']===''?0x0:re(_0x179b0b,_0x53a55b,rt)?.[_0x54e54c(0x268)]||0x0;},get 'topShelfThk'(){return this['getClieThk'](_0x296be7,Y['IAC_TOPSHELFTHICKNESS']);},get 'bottomShelfThk'(){const _0x6b96c4=_0x370ad7;return this[_0x6b96c4(0x281)](_0x296be7,Y[_0x6b96c4(0x393)]);},get 'dividerThk'(){const _0x3dd8a0=_0x370ad7;return this[_0x3dd8a0(0x281)](_0x296be7,Y['IAC_THICKNESS']);}}:null;}function ee(_0x1a36f4){const _0x2eb6bb=a0_0x235465,{getArticleData:_0x1297e3}=W(),{articleName:_0x408847}=X(),{resolveString:_0xc17340}=z(),{anglElems:_0x3d70d1}=_0x1297e3(_0x408847),_0x380495=_0x3d70d1[_0x2eb6bb(0x337)](_0x455387=>_0x455387[_0x2eb6bb(0x200)]===_0x1a36f4),_0x1b8763=ve(_0x1a36f4),_0x7df8c3=oe(_0x1b8763);if(!_0x380495)return null;const _0x3c6bd1=_0x380495[_0x2eb6bb(0x3b7)]===''?0x0:re(_0x1a36f4,Y[_0x2eb6bb(0x37e)],ce)?.[_0x2eb6bb(0x268)]||0x0,_0x2b8efa=re(st(_0x1a36f4),Y[_0x2eb6bb(0x37e)],ce)?.[_0x2eb6bb(0x268)]||0x0,_0x5dbece=re(it(_0x1a36f4),Y[_0x2eb6bb(0x37e)],ce)?.[_0x2eb6bb(0x268)]||0x0,_0x427a03=_0x380495[_0x2eb6bb(0x3b7)]===''?0x0:_0x380495[_0x2eb6bb(0x325)]!==''?ie(_0xc17340(_0x380495['INSETFOR'])):Number(_0x380495[_0x2eb6bb(0x3ab)]),_0x36318e=(typeof _0x427a03==_0x2eb6bb(0x285)?0x0:_0x427a03)||0x0,_0x2d3e99=_0x380495[_0x2eb6bb(0x22d)]||_0x2eb6bb(0x3a1),_0x43c503=_0x380495['CPNAME'],_0x546924=_0x7df8c3?.[_0x2eb6bb(0x229)]||0x0,_0xa70b01=_0x7df8c3?.[_0x2eb6bb(0x2fe)]||0x0,_0x3ad9d2={'start':Number(_0x380495['STARTOFFS'])||0x0,'end':Number(_0x380495[_0x2eb6bb(0x1ee)])||0x0,'top':Number(_0x380495[_0x2eb6bb(0x2ce)])||0x0,'bottom':Number(_0x380495[_0x2eb6bb(0x20e)])||0x0},_0x287462={'start':_0x380495[_0x2eb6bb(0x371)],'end':_0x380495[_0x2eb6bb(0x265)],'top':_0x380495[_0x2eb6bb(0x2d4)],'bottom':_0x380495[_0x2eb6bb(0x383)]},_0x336296={'top':_0x287462[_0x2eb6bb(0x2a0)]==='S'?_0x546924:0x0,'bottom':_0x287462[_0x2eb6bb(0x2b3)]==='S'?_0xa70b01:0x0};return{'TREEID':_0x1a36f4,'thk':_0x3c6bd1,'nxtThk':_0x2b8efa,'prvThk':_0x5dbece,'inset':_0x36318e,'color':_0x2d3e99,'CPNAME':_0x43c503,'topThk':_0x546924,'bottomThk':_0xa70b01,'oversize':_0x3ad9d2,'trim':_0x287462,'elmTrimThk':_0x336296};}var D=class extends Error{constructor(_0x39c7ba){const _0x2d32ad=a0_0x235465;super(_0x2d32ad(0x318)+_0x39c7ba),this['name']=_0x2d32ad(0x316);}},$,at=($=class{constructor(){const _0x1fc966=a0_0x235465;A(this,'cache',new Map()),A(this,_0x1fc966(0x33c),''),A(this,_0x1fc966(0x35c),[]),A(this,_0x1fc966(0x3bd),0x0),A(this,'current',0x0),A(this,_0x1fc966(0x3a6),[]);}[a0_0x235465(0x219)](_0x4f2b1a){const _0x385d98=a0_0x235465;this['errors'][_0x385d98(0x2d1)](_0x4f2b1a);}[a0_0x235465(0x252)](_0x392b40){const _0x42253f=a0_0x235465;if(this[_0x42253f(0x339)][_0x42253f(0x312)](_0x392b40)){const _0x8e0f0e=this[_0x42253f(0x339)][_0x42253f(0x233)](_0x392b40);return this[_0x42253f(0x339)][_0x42253f(0x32c)](_0x392b40),this[_0x42253f(0x339)][_0x42253f(0x328)](_0x392b40,_0x8e0f0e),_0x8e0f0e;}try{this[_0x42253f(0x33c)]=_0x392b40;const _0x5d30de=this['preformScan']();if(this[_0x42253f(0x339)][_0x42253f(0x328)](this[_0x42253f(0x33c)],_0x5d30de),this[_0x42253f(0x339)][_0x42253f(0x39e)]>0x3){const _0x1dd62a=this[_0x42253f(0x339)]['keys']()['next']()[_0x42253f(0x26a)];this['cache']['delete'](_0x1dd62a);}return _0x5d30de;}catch(_0x136f2a){throw console[_0x42253f(0x3bc)](_0x136f2a),new Error(_0x136f2a instanceof Error?_0x136f2a['message']:String(_0x136f2a));}}['preformScan'](){const _0x51bc4e=a0_0x235465;this['resetState']();try{if(this['source'][_0x51bc4e(0x31a)]('<')||this['source'][_0x51bc4e(0x31a)]('>'))throw new Error(_0x51bc4e(0x33f));if(this[_0x51bc4e(0x33c)]['length']===0x0)throw new Error(_0x51bc4e(0x3b6));for(this['start']=0x0,this[_0x51bc4e(0x3bb)]=0x0,this['tokens']=[],this[_0x51bc4e(0x3bd)]===0x0&&this[_0x51bc4e(0x2a2)]('LEFT_ANGLE_BRACKET','<');!this['isAtEnd']();){this[_0x51bc4e(0x3bd)]=this[_0x51bc4e(0x3bb)];const _0x34f52d=this[_0x51bc4e(0x237)]();switch(_0x34f52d){case':':this[_0x51bc4e(0x2a2)]('RIGHT_ANGLE_BRACKET','>'),this[_0x51bc4e(0x2a2)](_0x51bc4e(0x2ff),'<'),this[_0x51bc4e(0x21b)]();break;case'\x20':case'\x0d':case'\x09':case'\x0a':this['advance']();break;case'0':case'1':case'2':case'3':case'4':case'5':case'6':case'7':case'8':case'9':case'.':this['scanNumber']();break;case'$':this[_0x51bc4e(0x31c)]();break;case'+':case'-':case'*':case'/':this[_0x51bc4e(0x2a2)](_0x51bc4e(0x3af),_0x34f52d),this[_0x51bc4e(0x21b)]();break;case'(':this[_0x51bc4e(0x2a2)](_0x51bc4e(0x205),'('),this[_0x51bc4e(0x21b)]();break;case')':this[_0x51bc4e(0x2a2)](_0x51bc4e(0x35d),')'),this['advance']();break;case'{':this[_0x51bc4e(0x3bb)]!=0x0&&this[_0x51bc4e(0x35c)][this[_0x51bc4e(0x35c)][_0x51bc4e(0x2e1)]-0x1][_0x51bc4e(0x275)]!=_0x51bc4e(0x3af)&&this[_0x51bc4e(0x2a2)]('OPERATOR','*'),this['addToken'](_0x51bc4e(0x2e3),'{'),this['addToken'](_0x51bc4e(0x2ff),'<'),this[_0x51bc4e(0x21b)]();break;case'}':this['addToken'](_0x51bc4e(0x24a),'>'),this['addToken'](_0x51bc4e(0x20d),'}'),this[_0x51bc4e(0x21b)]();break;case'[':this[_0x51bc4e(0x2a2)](_0x51bc4e(0x3af),'~'),this[_0x51bc4e(0x2a2)](_0x51bc4e(0x2f7),'['),this[_0x51bc4e(0x21b)]();break;case']':this[_0x51bc4e(0x2a2)](_0x51bc4e(0x364),']'),this[_0x51bc4e(0x21b)]();break;case'm':this[_0x51bc4e(0x34e)]()==='m'?this[_0x51bc4e(0x2b6)]():this[_0x51bc4e(0x223)]();break;default:this[_0x51bc4e(0x381)](_0x34f52d)?this[_0x51bc4e(0x223)]():this[_0x51bc4e(0x219)](_0x51bc4e(0x24b)+_0x34f52d+_0x51bc4e(0x2dd)+this[_0x51bc4e(0x3bb)]);}}if(this[_0x51bc4e(0x2a2)]('RIGHT_ANGLE_BRACKET','>'),this[_0x51bc4e(0x2a2)](_0x51bc4e(0x332),''),this[_0x51bc4e(0x3a6)][_0x51bc4e(0x2e1)]>0x0)throw new Error(this[_0x51bc4e(0x3a6)][_0x51bc4e(0x29d)](',\x0a'));return this[_0x51bc4e(0x35c)];}catch(_0x162724){throw new Error(_0x162724 instanceof Error?_0x162724[_0x51bc4e(0x1ff)]:String(_0x162724));}}[a0_0x235465(0x366)](){const _0x4d799b=a0_0x235465;return this[_0x4d799b(0x3bb)]>=this[_0x4d799b(0x33c)]['length'];}[a0_0x235465(0x21b)](){const _0x4c2f5a=a0_0x235465;return this[_0x4c2f5a(0x33c)][_0x4c2f5a(0x269)](this[_0x4c2f5a(0x3bb)]++);}[a0_0x235465(0x237)](){const _0x4bc794=a0_0x235465;return this['isAtEnd']()?'\x00':this[_0x4bc794(0x33c)][_0x4bc794(0x269)](this['current']);}[a0_0x235465(0x34e)](){const _0x4486ac=a0_0x235465;return this['current']+0x1>=this[_0x4486ac(0x33c)][_0x4486ac(0x2e1)]?'\x00':this[_0x4486ac(0x33c)][_0x4486ac(0x269)](this[_0x4486ac(0x3bb)]+0x1);}[a0_0x235465(0x2a2)](_0x50528b,_0x228484){const _0x3536ea=a0_0x235465;this[_0x3536ea(0x35c)][_0x3536ea(0x2d1)]({'type':_0x50528b,'lexeme':_0x228484||(_0x50528b?this[_0x3536ea(0x33c)][_0x3536ea(0x36b)](this[_0x3536ea(0x3bd)],this[_0x3536ea(0x3bb)]):''),'position':this['start']});}[a0_0x235465(0x370)](_0x337648){return/^[0-9]$/['test'](_0x337648);}['isAlpha'](_0x2b380f){const _0x4b151e=a0_0x235465;return/^[a-zA-Z]$/[_0x4b151e(0x1f8)](_0x2b380f);}[a0_0x235465(0x27c)](){const _0x1fd91f=a0_0x235465;for(;this[_0x1fd91f(0x370)](this[_0x1fd91f(0x237)]());)this[_0x1fd91f(0x21b)]();if(this[_0x1fd91f(0x237)]()==='.'){for(this['advance'](),this['isDigit'](this[_0x1fd91f(0x237)]())||this['reportError'](_0x1fd91f(0x399)+this[_0x1fd91f(0x3bb)]);this[_0x1fd91f(0x370)](this['peek']());)this[_0x1fd91f(0x21b)]();}this['addToken'](_0x1fd91f(0x2a7));}[a0_0x235465(0x31c)](){const _0x7bf376=a0_0x235465;for(this[_0x7bf376(0x21b)]();/[a-zA-Z0-9_]/[_0x7bf376(0x1f8)](this[_0x7bf376(0x237)]());)this[_0x7bf376(0x21b)]();const _0x38860d=this[_0x7bf376(0x33c)][_0x7bf376(0x36b)](this['start']+0x1,this[_0x7bf376(0x3bb)]);if(_0x38860d[_0x7bf376(0x22b)]('mm')){const _0x1253fd=_0x38860d[_0x7bf376(0x36b)](0x0,_0x38860d[_0x7bf376(0x2e1)]-0x2);_0x1253fd&&_0x1253fd['length']>0x0?(this[_0x7bf376(0x2a2)](_0x7bf376(0x34b),_0x1253fd),this[_0x7bf376(0x2a2)](_0x7bf376(0x353),'mm')):this['reportError'](_0x7bf376(0x39b));}else this[_0x7bf376(0x2a2)]('VARIABLE',_0x38860d);}[a0_0x235465(0x2b6)](){const _0x1998c6=a0_0x235465;this[_0x1998c6(0x21b)](),this[_0x1998c6(0x21b)](),this[_0x1998c6(0x2a2)](_0x1998c6(0x353),'mm');}[a0_0x235465(0x223)](){const _0x506e71=a0_0x235465,_0x5ce2c3=['X','Y','n'];for(;this['isAlpha'](this[_0x506e71(0x237)]());)this[_0x506e71(0x21b)]();const _0x328b3b=this[_0x506e71(0x33c)][_0x506e71(0x36b)](this[_0x506e71(0x3bd)],this[_0x506e71(0x3bb)]),_0x2566c8=$[_0x506e71(0x30d)][_0x328b3b[_0x506e71(0x22a)]()];_0x2566c8!=null?this[_0x506e71(0x2a2)](_0x2566c8,_0x328b3b):_0x5ce2c3[_0x506e71(0x31a)](_0x328b3b)?this['addToken'](_0x506e71(0x2c0),_0x328b3b):this[_0x506e71(0x219)]('Unknown\x20identifier:\x20'+_0x328b3b+'\x20at\x20position:\x20'+this['current']);}[a0_0x235465(0x2d3)](){const _0x41b0ca=a0_0x235465;this[_0x41b0ca(0x35c)]=[],this[_0x41b0ca(0x3bd)]=0x0,this['current']=0x0,this[_0x41b0ca(0x3a6)]=[];}},A($,a0_0x235465(0x30d),{'abs':a0_0x235465(0x2a3),'acos':a0_0x235465(0x2a3),'asin':a0_0x235465(0x2a3),'atan':a0_0x235465(0x2a3),'bog2deg':'FUNCTION','cos':a0_0x235465(0x2a3),'deg2bog':a0_0x235465(0x2a3),'in2mm':a0_0x235465(0x2a3),'ln':a0_0x235465(0x2a3),'log':a0_0x235465(0x2a3),'log10':'FUNCTION','max':'FUNCTION','maxunder':a0_0x235465(0x2a3),'mm2in':a0_0x235465(0x2a3),'nextto':a0_0x235465(0x2a3),'pi':a0_0x235465(0x2a3),'pow':a0_0x235465(0x2a3),'round':a0_0x235465(0x2a3),'sin':a0_0x235465(0x2a3),'sqr':'FUNCTION','tab':a0_0x235465(0x2a3),'tan':a0_0x235465(0x2a3)}),$),ot=class{constructor(){const _0x45f717=a0_0x235465;A(this,'cache',new Map()),A(this,_0x45f717(0x35c),[]),A(this,_0x45f717(0x3bb),0x0),A(this,_0x45f717(0x357),()=>{this['current']=0x0;});}[a0_0x235465(0x231)](_0x5f1773){const _0x4a397f=a0_0x235465;if(this[_0x4a397f(0x339)][_0x4a397f(0x312)](_0x5f1773)){const _0x487627=this[_0x4a397f(0x339)][_0x4a397f(0x233)](_0x5f1773);return this[_0x4a397f(0x339)][_0x4a397f(0x32c)](_0x5f1773),this['cache'][_0x4a397f(0x328)](_0x5f1773,_0x487627),_0x487627;}try{this[_0x4a397f(0x35c)]=_0x5f1773;const _0x292207=this[_0x4a397f(0x2be)](_0x5f1773);if(this[_0x4a397f(0x339)]['set'](_0x5f1773,_0x292207),this[_0x4a397f(0x339)]['size']>0x3){const _0x28f0a0=this[_0x4a397f(0x339)][_0x4a397f(0x260)]()[_0x4a397f(0x2ac)]()[_0x4a397f(0x26a)];this['cache'][_0x4a397f(0x32c)](_0x28f0a0);}return _0x292207;}catch(_0x285455){throw new Error(_0x285455 instanceof Error?_0x285455[_0x4a397f(0x1ff)]:String(_0x285455));}}[a0_0x235465(0x2be)](_0x3201ff){const _0x390930=a0_0x235465;if(this[_0x390930(0x357)](),this[_0x390930(0x35c)][_0x390930(0x2e1)]===0x0)throw new Error('No\x20tokens\x20to\x20parse.');try{return this[_0x390930(0x2dc)]();}catch(_0x3efa52){throw new Error(_0x3efa52 instanceof Error?_0x3efa52[_0x390930(0x1ff)]:String(_0x3efa52));}}[a0_0x235465(0x224)](){const _0x231822=a0_0x235465;if(this['isAtEnd']())return!0x1;const _0x50a9ed=this[_0x231822(0x237)]();return _0x50a9ed[_0x231822(0x275)]===_0x231822(0x353)&&_0x50a9ed[_0x231822(0x354)]==='mm';}['consumeMillimeterSuffix'](){return this['checkMillimeterSuffix']()?(this['advance'](),!0x0):!0x1;}[a0_0x235465(0x2da)](){const _0x241cda=a0_0x235465,_0x35c63e=[];if(!this[_0x241cda(0x299)](_0x241cda(0x2ff)))return this[_0x241cda(0x2dc)]();for(;this['check']('LEFT_ANGLE_BRACKET');){this[_0x241cda(0x21b)]();let _0x284bbb=this[_0x241cda(0x2dc)]();this['consume'](_0x241cda(0x24a),_0x241cda(0x3ac)),_0x35c63e['push']({'type':_0x241cda(0x34f),'nodes':_0x284bbb,'hasMillimeterSuffix':this[_0x241cda(0x27a)]()});}if(_0x35c63e[_0x241cda(0x2e1)]===0x1){const _0x4e8e68=_0x35c63e[0x0];return _0x4e8e68['type']===_0x241cda(0x34f)&&_0x4e8e68[_0x241cda(0x2e7)][_0x241cda(0x275)]===_0x241cda(0x34f)?_0x4e8e68[_0x241cda(0x2e7)]:_0x4e8e68;}return{'type':_0x241cda(0x39d),'sections':_0x35c63e};}['expression'](){const _0x41d356=a0_0x235465;try{let _0x3f1ead=this[_0x41d356(0x377)]();for(;!this['isAtEnd']()&&this[_0x41d356(0x299)]('OPERATOR')&&['+','-'][_0x41d356(0x31a)](this[_0x41d356(0x237)]()['lexeme']);){this['advance']();const _0x49db6c=this[_0x41d356(0x37c)]()['lexeme'],_0x568681=this[_0x41d356(0x377)]();_0x3f1ead={'type':_0x41d356(0x244),'left':_0x3f1ead,'operator':_0x49db6c,'right':_0x568681};}return _0x3f1ead;}catch(_0x327a57){throw new Error(_0x41d356(0x3bf)+_0x327a57['message']);}}[a0_0x235465(0x377)](){const _0x313bb0=a0_0x235465;try{let _0x3eb50d=this[_0x313bb0(0x2fc)]();for(;!this[_0x313bb0(0x366)]()&&this[_0x313bb0(0x299)](_0x313bb0(0x3af))&&['*','/','~'][_0x313bb0(0x31a)](this[_0x313bb0(0x237)]()[_0x313bb0(0x354)]);){this[_0x313bb0(0x21b)]();const _0x5f2501=this['previous']()[_0x313bb0(0x354)],_0xea31e5=this['factor']();if(_0xea31e5['type']===_0x313bb0(0x2fb)&&_0xea31e5[_0x313bb0(0x261)]==='n')throw new Error(_0x313bb0(0x335));_0x3eb50d={'type':_0x313bb0(0x244),'left':_0x3eb50d,'operator':_0x5f2501,'right':_0xea31e5};}return _0x3eb50d;}catch(_0x581f7f){throw new Error(_0x313bb0(0x32a)+_0x581f7f['message']);}}[a0_0x235465(0x2fc)](){const _0x139009=a0_0x235465;try{if(this['check']('OPERATOR')&&['-','+'][_0x139009(0x31a)](this[_0x139009(0x237)]()[_0x139009(0x354)])){this['advance']();const _0xa783cf=this[_0x139009(0x37c)]()['lexeme'],_0x3e8887=this[_0x139009(0x2fc)]();return{'type':_0x139009(0x2c2),'operator':_0xa783cf,'right':_0x3e8887};}return this[_0x139009(0x270)]();}catch(_0x10d3ad){throw new Error('Failed\x20to\x20parse\x20factor:\x20'+_0x10d3ad[_0x139009(0x1ff)]);}}[a0_0x235465(0x270)](){const _0x249613=a0_0x235465;try{if(this[_0x249613(0x299)](_0x249613(0x2a7)))return this[_0x249613(0x21b)](),{'type':_0x249613(0x221),'value':parseFloat(this[_0x249613(0x37c)]()[_0x249613(0x354)]),'hasMillimeterSuffix':this[_0x249613(0x27a)]()};if(this[_0x249613(0x299)](_0x249613(0x34b)))return this[_0x249613(0x21b)](),{'type':'Variable','name':this['previous']()[_0x249613(0x354)],'hasMillimeterSuffix':this[_0x249613(0x27a)]()};if(this[_0x249613(0x299)](_0x249613(0x2c0)))return this[_0x249613(0x21b)](),{'type':'SpecialVariable','name':this['previous']()['lexeme'],'hasMillimeterSuffix':this['previous']()['lexeme']==='n'};if(this[_0x249613(0x299)](_0x249613(0x2a3))){this[_0x249613(0x21b)]();const _0x163c6c=this[_0x249613(0x37c)]()[_0x249613(0x354)];this[_0x249613(0x29e)]('PAREN_OPEN',_0x249613(0x258)+_0x163c6c+'\x27.');const _0x68380d=this[_0x249613(0x2dc)]();return this[_0x249613(0x29e)](_0x249613(0x35d),'Expected\x20\x27)\x27\x20after\x20function\x20arguments.'),{'type':_0x249613(0x2c5),'name':_0x163c6c,'arg':_0x68380d,'hasMillimeterSuffix':this['consumeMillimeterSuffix']()};}if(this['check'](_0x249613(0x205))){this['advance']();const _0x5e0bdf=this['expression']();if(!_0x5e0bdf)throw new Error(_0x249613(0x1f4));return this[_0x249613(0x29e)](_0x249613(0x35d),_0x249613(0x21d)),{'type':_0x249613(0x2c1),'expression':_0x5e0bdf,'hasMillimeterSuffix':this[_0x249613(0x27a)]()};}if(this['check'](_0x249613(0x35d)))throw new Error('Unexpected\x20\x27)\x27\x20without\x20a\x20matching\x20\x27(\x27.');if(this[_0x249613(0x299)](_0x249613(0x2e3))){this[_0x249613(0x21b)]();let _0xc7a105=this[_0x249613(0x2da)]();return this[_0x249613(0x29e)](_0x249613(0x20d),_0x249613(0x250)),_0xc7a105[_0x249613(0x275)]===_0x249613(0x34f)&&_0xc7a105['nodes']['type']===_0x249613(0x34f)&&(_0xc7a105=_0xc7a105[_0x249613(0x2e7)]),{'type':_0x249613(0x369),'toRepeat':_0xc7a105,'hasMillimeterSuffix':this[_0x249613(0x27a)]()};}if(this['check']('LEFT_ANGLE_BRACKET'))return this[_0x249613(0x2da)]();throw new Error(_0x249613(0x2d5)+this['peek']()[_0x249613(0x354)]);}catch(_0x5b4650){throw new Error('Failed\x20to\x20parse\x20primary:\x20'+_0x5b4650[_0x249613(0x1ff)]);}}[a0_0x235465(0x299)](_0x3efea9){const _0x386ec8=a0_0x235465;return this['isAtEnd']()?!0x1:this[_0x386ec8(0x237)]()[_0x386ec8(0x275)]===_0x3efea9;}[a0_0x235465(0x21b)](){const _0x33140a=a0_0x235465;return this[_0x33140a(0x366)]()||this[_0x33140a(0x3bb)]++,this[_0x33140a(0x37c)]();}[a0_0x235465(0x29e)](_0x4775e4,_0x1cfdf6){const _0x8ec918=a0_0x235465;if(this[_0x8ec918(0x299)](_0x4775e4))return this[_0x8ec918(0x21b)]();throw new Error(_0x1cfdf6);}[a0_0x235465(0x366)](){const _0x25fd18=a0_0x235465;return this[_0x25fd18(0x3bb)]>=this[_0x25fd18(0x35c)][_0x25fd18(0x2e1)];}['peek'](){const _0x129a3e=a0_0x235465;return this[_0x129a3e(0x35c)][this[_0x129a3e(0x3bb)]];}[a0_0x235465(0x37c)](){return this['tokens'][this['current']-0x1];}},be=_0x55740a=>_0x55740a[a0_0x235465(0x275)]===a0_0x235465(0x2fb)&&_0x55740a[a0_0x235465(0x261)]==='n';function lt(_0x713f83,_0xdd47e0){const _0x4cc1f0=a0_0x235465;if(_0x713f83[_0x4cc1f0(0x3ad)][_0x4cc1f0(0x275)]==='SpecialVariable'&&_0x713f83['right'][_0x4cc1f0(0x261)]==='n')return new D(_0x4cc1f0(0x2b1));const _0x2fda9e=be(_0x713f83['left'])?_0x713f83[_0x4cc1f0(0x2fa)]:this[_0x4cc1f0(0x228)](_0x713f83[_0x4cc1f0(0x2fa)]),_0x3274b1=be(_0x713f83[_0x4cc1f0(0x3ad)])?_0x713f83[_0x4cc1f0(0x3ad)]:this[_0x4cc1f0(0x228)](_0x713f83[_0x4cc1f0(0x3ad)]);if(_0x2fda9e instanceof D)return _0x2fda9e;if(_0x3274b1 instanceof D)return _0x3274b1;const _0x48542f=_0x2fda9e[_0x4cc1f0(0x275)]===_0x4cc1f0(0x221)&&_0x3274b1[_0x4cc1f0(0x275)]===_0x4cc1f0(0x221),_0x1ee82f=_0x48542f?_0x2fda9e[_0x4cc1f0(0x343)]===_0x3274b1['hasMillimeterSuffix']:!0x1,_0x474086=_0x46059f=>_0x46059f[_0x4cc1f0(0x275)]===_0x4cc1f0(0x369);switch(_0x713f83[_0x4cc1f0(0x360)]){case'+':return _0x48542f&&_0x1ee82f&&_0xdd47e0?.[_0x4cc1f0(0x2b0)]==!0x1?{'type':_0x4cc1f0(0x221),'value':_0x2fda9e[_0x4cc1f0(0x26a)]+_0x3274b1[_0x4cc1f0(0x26a)],'hasMillimeterSuffix':_0x2fda9e[_0x4cc1f0(0x343)]===!0x0||_0x3274b1['hasMillimeterSuffix']===!0x0,'spreadMm':_0x2fda9e['spreadMm']||_0x3274b1[_0x4cc1f0(0x28f)]}:_0x48542f&&_0xdd47e0?.['isInsideGroup']==!0x0?{'type':_0x4cc1f0(0x221),'value':_0x2fda9e['value']+_0x3274b1[_0x4cc1f0(0x26a)],'spreadMm':_0x2fda9e[_0x4cc1f0(0x343)]||_0x3274b1[_0x4cc1f0(0x343)]}:{'type':_0x4cc1f0(0x244),'operator':'+','left':_0x2fda9e,'right':_0x3274b1};case'*':return _0x48542f&&_0xdd47e0?.[_0x4cc1f0(0x2b0)]==!0x0?{'type':_0x4cc1f0(0x221),'value':_0x2fda9e[_0x4cc1f0(0x26a)]*_0x3274b1[_0x4cc1f0(0x26a)],'hasMillimeterSuffix':_0x2fda9e[_0x4cc1f0(0x343)]===!0x0||_0x3274b1['hasMillimeterSuffix']===!0x0,'spreadMm':_0x2fda9e[_0x4cc1f0(0x28f)]||_0x3274b1[_0x4cc1f0(0x28f)]}:_0x474086(_0x3274b1)&&_0x2fda9e[_0x4cc1f0(0x275)]==='NumberLiteral'?{'type':_0x4cc1f0(0x369),'toRepeat':_0x3274b1[_0x4cc1f0(0x230)],'times':Math[_0x4cc1f0(0x2f4)](_0x2fda9e[_0x4cc1f0(0x26a)]),'hasMillimeterSuffix':_0x3274b1[_0x4cc1f0(0x275)]==='NumberLiteral'&&_0x3274b1[_0x4cc1f0(0x343)]||!0x1}:_0xdd47e0?.[_0x4cc1f0(0x2b0)]==!0x1&&_0x2fda9e['type']!==_0x4cc1f0(0x2fb)&&_0x2fda9e['name']!=='n'?new D(_0x4cc1f0(0x2e4)):_0x2fda9e[_0x4cc1f0(0x275)]===_0x4cc1f0(0x2fb)?{'type':_0x4cc1f0(0x244),'operator':'*','left':_0x2fda9e,'right':{'type':'NumberLiteral','value':_0x3274b1[_0x4cc1f0(0x26a)],'hasMillimeterSuffix':!0x0}}:{'type':'BinaryExpression','operator':'*','left':_0x2fda9e,'right':_0x3274b1,'hasMillimeterSuffix':_0x2fda9e['hasMillimeterSuffix']||_0x3274b1['hasMillimeterSuffix']};case'/':if(_0x48542f&&_0xdd47e0?.[_0x4cc1f0(0x2b0)]==!0x0)return{'type':_0x4cc1f0(0x221),'value':_0x2fda9e[_0x4cc1f0(0x26a)]/_0x3274b1[_0x4cc1f0(0x26a)],'hasMillimeterSuffix':_0x2fda9e[_0x4cc1f0(0x343)]===!0x0||_0x3274b1[_0x4cc1f0(0x343)]===!0x0};if(_0xdd47e0?.['isInsideGroup']==!0x1)return new D('cannot\x20have\x20\x20/\x20outside\x20of\x20group');case'-':return _0x48542f&&_0x1ee82f&&_0xdd47e0?.['isInsideGroup']==!0x1?{'type':_0x4cc1f0(0x221),'value':_0x2fda9e[_0x4cc1f0(0x26a)]-_0x3274b1[_0x4cc1f0(0x26a)],'hasMillimeterSuffix':_0x2fda9e['hasMillimeterSuffix']===!0x0||_0x3274b1['hasMillimeterSuffix']===!0x0,'spreadMm':_0x2fda9e['spreadMm']||_0x3274b1[_0x4cc1f0(0x28f)]}:_0x48542f&&_0xdd47e0?.[_0x4cc1f0(0x2b0)]==!0x0?{'type':'NumberLiteral','value':_0x2fda9e['value']-_0x3274b1['value'],'spreadMm':_0x2fda9e['hasMillimeterSuffix']||_0x3274b1[_0x4cc1f0(0x343)]}:{'type':_0x4cc1f0(0x244),'operator':'-','left':_0x2fda9e,'right':_0x3274b1};default:throw new D(_0x4cc1f0(0x3b8));}}function ct(_0x49fe9a,_0x32206d){const _0x31190b=a0_0x235465,_0x1b27fa=this[_0x31190b(0x228)](_0x49fe9a[_0x31190b(0x22e)]);if(_0x1b27fa instanceof D)throw new D(_0x31190b(0x2cd));switch(_0x49fe9a[_0x31190b(0x261)]['toLowerCase']()){case _0x31190b(0x38d):return{'type':'NumberLiteral','value':Math[_0x31190b(0x38d)](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.['isInsideGroup']===!0x1};case _0x31190b(0x21c):return{'type':_0x31190b(0x221),'value':Math['acos'](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case _0x31190b(0x3b9):return{'type':_0x31190b(0x221),'value':Math['asin'](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.['isInsideGroup']===!0x1};case _0x31190b(0x394):return{'type':_0x31190b(0x221),'value':Math[_0x31190b(0x394)](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case _0x31190b(0x3a8):return{'type':_0x31190b(0x221),'value':Math['cos'](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case'sin':return{'type':'NumberLiteral','value':Math[_0x31190b(0x309)](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case _0x31190b(0x301):return{'type':'NumberLiteral','value':Math[_0x31190b(0x301)](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa['hasMillimeterSuffix'],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case _0x31190b(0x2f4):return{'type':_0x31190b(0x221),'value':Math['round'](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case _0x31190b(0x2ea):return{'type':'NumberLiteral','value':_0x1b27fa[_0x31190b(0x26a)]*(0xb4/Math['PI']),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case'deg2bog':return{'type':_0x31190b(0x221),'value':_0x1b27fa[_0x31190b(0x26a)]*(Math['PI']/0xb4),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case _0x31190b(0x296):return{'type':_0x31190b(0x221),'value':_0x1b27fa[_0x31190b(0x26a)]*25.4,'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case _0x31190b(0x2eb):return{'type':_0x31190b(0x221),'value':_0x1b27fa[_0x31190b(0x26a)]/25.4,'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case'ln':return{'type':_0x31190b(0x221),'value':Math[_0x31190b(0x212)](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.[_0x31190b(0x2b0)]===!0x1};case _0x31190b(0x331):return{'type':_0x31190b(0x221),'value':Math[_0x31190b(0x331)](_0x1b27fa[_0x31190b(0x26a)]),'hasMillimeterSuffix':_0x1b27fa[_0x31190b(0x343)],'spreadMm':_0x32206d?.['isInsideGroup']===!0x1};default:throw new D(_0x31190b(0x26d));}}function ut(_0x384926){const _0x337a53=a0_0x235465;if(!this[_0x337a53(0x24c)]||!(_0x384926[_0x337a53(0x261)]in this[_0x337a53(0x24c)]))throw new D(_0x337a53(0x29c)+_0x384926['name']+_0x337a53(0x2a5));return{'type':'NumberLiteral','value':this['variables'][_0x384926[_0x337a53(0x261)]],'hasMillimeterSuffix':_0x384926[_0x337a53(0x343)]};}var ht=class{constructor(){const _0x5224b1=a0_0x235465;A(this,_0x5224b1(0x317),0x0),A(this,_0x5224b1(0x24c),{}),A(this,'evaluateBinaryExpression'),A(this,'evaluateFunction'),A(this,_0x5224b1(0x2a1)),(this[_0x5224b1(0x314)]=lt['bind'](this),this['evaluateFunction']=ct[_0x5224b1(0x315)](this),this['evaluateVariable']=ut['bind'](this));}[a0_0x235465(0x228)](_0x36036d,_0x5de04e={'isInsideGroup':!0x1},_0x3c4061){const _0x148d4e=a0_0x235465;this[_0x148d4e(0x317)]++;try{if(_0x3c4061&&(this[_0x148d4e(0x24c)]=_0x3c4061),this['isSections'](_0x36036d))return this[_0x148d4e(0x267)](_0x36036d,_0x5de04e);if(this[_0x148d4e(0x227)](_0x36036d)){const _0x536ea8=this[_0x148d4e(0x228)](_0x36036d[_0x148d4e(0x2e7)],_0x5de04e);return _0x536ea8 instanceof D?new D(_0x148d4e(0x1f3)+JSON[_0x148d4e(0x37a)](_0x36036d)):{..._0x36036d,'nodes':_0x536ea8};}if(this['isNumberLiteral'](_0x36036d)){if(_0x5de04e[_0x148d4e(0x2b0)]){if(_0x36036d['hasMillimeterSuffix'])return{..._0x36036d,'spreadMm':!0x0};}else return _0x36036d;}if(this[_0x148d4e(0x222)](_0x36036d)){_0x5de04e={..._0x5de04e,'isInsideGroup':!0x0};const _0x51cbc6=this['evaluate'](_0x36036d[_0x148d4e(0x2dc)],_0x5de04e);return _0x51cbc6 instanceof D?_0x51cbc6:{..._0x51cbc6,'hasMillimeterSuffix':_0x36036d[_0x148d4e(0x343)]};}if(this[_0x148d4e(0x300)](_0x36036d)){const _0x54761c=this[_0x148d4e(0x228)](_0x36036d[_0x148d4e(0x230)]);return _0x54761c instanceof D?_0x54761c:{..._0x36036d,'toRepeat':_0x54761c};}if(this[_0x148d4e(0x25b)](_0x36036d))return this[_0x148d4e(0x314)](_0x36036d,_0x5de04e);if(this[_0x148d4e(0x24e)](_0x36036d))return{'type':_0x148d4e(0x221),'value':_0x36036d[_0x148d4e(0x360)]==='-'?-0x1*_0x36036d['right']['value']:_0x36036d[_0x148d4e(0x3ad)][_0x148d4e(0x26a)],'hasMillimeterSuffix':_0x36036d[_0x148d4e(0x3ad)][_0x148d4e(0x343)]};if(this[_0x148d4e(0x2b2)](_0x36036d))return this[_0x148d4e(0x36d)](_0x36036d,_0x5de04e);if(this[_0x148d4e(0x379)](_0x36036d)){if(this[_0x148d4e(0x24c)])return this[_0x148d4e(0x2a1)](_0x36036d);throw new D(_0x148d4e(0x382));}throw new D(_0x148d4e(0x308)+_0x36036d[_0x148d4e(0x275)]);}catch(_0xdba600){throw new D(_0xdba600[_0x148d4e(0x1ff)]);}finally{this[_0x148d4e(0x317)]--;}}[a0_0x235465(0x24e)](_0xb256e4){const _0x188819=a0_0x235465;return _0xb256e4[_0x188819(0x275)]===_0x188819(0x2c2);}[a0_0x235465(0x1f0)](_0x170885){const _0x5e9280=a0_0x235465;return _0x170885[_0x5e9280(0x275)]===_0x5e9280(0x221);}[a0_0x235465(0x379)](_0x5a65dc){const _0x4ec92c=a0_0x235465;return _0x5a65dc['type']===_0x4ec92c(0x397)||_0x5a65dc['type']===_0x4ec92c(0x2fb);}[a0_0x235465(0x25b)](_0x23f7e5){const _0x23f1f4=a0_0x235465;return _0x23f7e5[_0x23f1f4(0x275)]==='BinaryExpression';}[a0_0x235465(0x2b2)](_0x27132f){const _0x35bf01=a0_0x235465;return _0x27132f['type']===_0x35bf01(0x2c5);}[a0_0x235465(0x222)](_0x187590){const _0x1f1110=a0_0x235465;return _0x187590[_0x1f1110(0x275)]==='Grouping';}[a0_0x235465(0x300)](_0x4315d1){const _0x26e6e3=a0_0x235465;return _0x4315d1[_0x26e6e3(0x275)]===_0x26e6e3(0x369);}['isSections'](_0x5330dc){const _0x5897f8=a0_0x235465;return _0x5330dc[_0x5897f8(0x275)]==='Sections';}[a0_0x235465(0x227)](_0x8da509){const _0x35d365=a0_0x235465;return _0x8da509[_0x35d365(0x275)]===_0x35d365(0x34f);}[a0_0x235465(0x267)](_0x5ddcc5,_0x266faf={'isInsideGroup':!0x1}){return{'type':'Sections','sections':_0x5ddcc5['sections']['map'](_0x36bff=>{const _0x56483e=a0_0x5bf0,_0x41fda4=this[_0x56483e(0x228)](_0x36bff[_0x56483e(0x2e7)]);if(_0x41fda4 instanceof D)throw _0x41fda4;return{'type':_0x56483e(0x34f),'nodes':_0x41fda4};})};}};function j(_0x148229,_0x24385a){const _0xc2911a=a0_0x235465;if(!_0x148229)throw new D('unsupported\x20node\x20type\x20to\x20traverse:\x20'+JSON['stringify'](_0x148229));_0x24385a(_0x148229),_0x148229[_0xc2911a(0x275)]===_0xc2911a(0x39d)&&Array[_0xc2911a(0x368)](_0x148229[_0xc2911a(0x2da)])?_0x148229['sections'][_0xc2911a(0x2e2)](_0x3fb1d6=>j(_0x3fb1d6,_0x24385a)):_0x148229['type']===_0xc2911a(0x34f)&&_0x148229[_0xc2911a(0x2e7)]?j(_0x148229[_0xc2911a(0x2e7)],_0x24385a):_0x148229[_0xc2911a(0x275)];}var ft=class{['accumulateIncorporatedThicknesses'](_0x69b333,_0x1f74b2,_0xd65b50,_0xe26540,_0x5252a8,_0x33214b,_0x5eda9a,_0xb18215,_0x523ca7){const _0x4eceee=a0_0x235465;let _0x13f212=0x0;if(_0x5eda9a==='M'){for(let _0x375048=0x1;_0x375048<_0x69b333[_0x4eceee(0x2da)][_0x4eceee(0x2e1)]-0x1;_0x375048++)_0x13f212+=_0xe26540;}if(_0x5eda9a==='O'){for(let _0x255486=0x1;_0x255486<_0x69b333[_0x4eceee(0x2da)]['length']-0x1;_0x255486++)_0x13f212+=_0xe26540*0x2;}return _0x5252a8==='M'&&(_0x13f212+=_0x1f74b2/0x2),_0x5252a8==='O'&&(_0x13f212+=_0x1f74b2),_0x33214b==='M'&&(_0x13f212+=_0x1f74b2/0x2),_0x33214b==='O'&&(_0x13f212+=_0x1f74b2),_0x523ca7==='M'&&(_0x13f212+=_0xd65b50/0x2),_0x523ca7==='O'&&(_0x13f212+=_0xd65b50),_0xb18215==='M'&&(_0x13f212+=_0xd65b50/0x2),_0xb18215==='O'&&(_0x13f212+=_0xd65b50),_0x13f212;}},mt=class{[a0_0x235465(0x344)](_0x576f9e,_0x19ec78=0x1f4,_0xd0e382=0x0,_0x3eb6b3){const _0xd1a6e8=a0_0x235465;try{if(_0x576f9e instanceof D)throw _0x576f9e;if(_0x576f9e[_0xd1a6e8(0x275)]!=='Sections'&&_0x576f9e['type']!==_0xd1a6e8(0x34f))throw new D(_0xd1a6e8(0x385)+JSON['stringify'](_0x576f9e));let _0x3222b6={'type':_0xd1a6e8(0x39d),'sections':[]};if(_0x576f9e[_0xd1a6e8(0x275)]==='Sections'){for(const _0x2360f2 of _0x576f9e[_0xd1a6e8(0x2da)])if(_0x2360f2[_0xd1a6e8(0x2e7)][_0xd1a6e8(0x275)]===_0xd1a6e8(0x369)&&_0x2360f2['nodes'][_0xd1a6e8(0x254)]){for(let _0x346221=0x0;_0x346221<(_0x2360f2[_0xd1a6e8(0x2e7)]?.[_0xd1a6e8(0x254)]??0x0);_0x346221++)if(_0x2360f2[_0xd1a6e8(0x2e7)]['toRepeat'][_0xd1a6e8(0x275)]===_0xd1a6e8(0x34f))_0x3222b6[_0xd1a6e8(0x2da)]['push'](_0x2360f2[_0xd1a6e8(0x2e7)][_0xd1a6e8(0x230)]);else{if(_0x2360f2[_0xd1a6e8(0x2e7)][_0xd1a6e8(0x230)][_0xd1a6e8(0x275)]===_0xd1a6e8(0x39d)){for(const _0xd9a212 of _0x2360f2[_0xd1a6e8(0x2e7)][_0xd1a6e8(0x230)][_0xd1a6e8(0x2da)])_0x3222b6['sections'][_0xd1a6e8(0x2d1)](_0xd9a212);}}}else _0x3222b6[_0xd1a6e8(0x2da)][_0xd1a6e8(0x2d1)](_0x2360f2);}else _0x576f9e[_0xd1a6e8(0x275)]==='Section'&&_0x3222b6[_0xd1a6e8(0x2da)][_0xd1a6e8(0x2d1)](_0x576f9e);if(_0x3eb6b3){const _0xc5b8b1=new ft()[_0xd1a6e8(0x384)](_0x3222b6,_0x3eb6b3[_0xd1a6e8(0x26b)],_0x3eb6b3[_0xd1a6e8(0x355)],_0xd0e382,_0x3eb6b3[_0xd1a6e8(0x32f)],_0x3eb6b3[_0xd1a6e8(0x234)],_0x3eb6b3['sizerefmid'],_0x3eb6b3[_0xd1a6e8(0x215)],_0x3eb6b3[_0xd1a6e8(0x37f)]);}_0x3222b6[_0xd1a6e8(0x2da)][_0xd1a6e8(0x2e2)](_0x12e8b0=>{let _0x8cc8ec=!0x1;j(_0x12e8b0,_0x2c1adb=>{const _0x28dde4=a0_0x5bf0;_0x2c1adb['type']===_0x28dde4(0x221)?_0x2c1adb?.['spreadMm']===!0x0&&(_0x8cc8ec=!0x0):_0x2c1adb[_0x28dde4(0x275)]===_0x28dde4(0x244)&&_0x2c1adb[_0x28dde4(0x2fa)][_0x28dde4(0x275)]===_0x28dde4(0x221)&&(_0x2c1adb[_0x28dde4(0x2fa)]?.['spreadMm']===!0x0&&(_0x8cc8ec=!0x0),_0x2c1adb[_0x28dde4(0x3ad)]?.['spreadMm']===!0x0&&(_0x8cc8ec=!0x0));}),_0x8cc8ec&&j(_0x12e8b0,_0xe5b9ce=>{const _0x571ee1=a0_0x5bf0;_0xe5b9ce[_0x571ee1(0x275)]===_0x571ee1(0x221)?_0xe5b9ce[_0x571ee1(0x343)]=!0x0:_0xe5b9ce[_0x571ee1(0x275)]===_0x571ee1(0x244)&&(_0xe5b9ce['left'][_0x571ee1(0x275)]===_0x571ee1(0x221)&&(_0xe5b9ce['left'][_0x571ee1(0x343)]=!0x0),_0xe5b9ce[_0x571ee1(0x3ad)]['type']===_0x571ee1(0x221)&&(_0xe5b9ce[_0x571ee1(0x3ad)][_0x571ee1(0x343)]=!0x0));});});let _0x42f074=0x0;const _0x50b964=_0xa77d3f=>{const _0x316735=_0xd1a6e8;if(_0xd0e382&&_0xa77d3f[_0x316735(0x275)]===_0x316735(0x34f)&&(_0x42f074+=_0xd0e382),_0xa77d3f[_0x316735(0x275)]==='NumberLiteral')_0xa77d3f[_0x316735(0x343)]===!0x0&&(_0x42f074+=_0xa77d3f[_0x316735(0x26a)]);else{if(_0xa77d3f[_0x316735(0x275)]==='BinaryExpression'){const _0x44f46c=_0xa77d3f;_0x44f46c[_0x316735(0x2fa)][_0x316735(0x275)]===_0x316735(0x221)&&_0x44f46c[_0x316735(0x3ad)][_0x316735(0x275)]===_0x316735(0x221)&&(_0x44f46c[_0x316735(0x2fa)][_0x316735(0x343)]===!0x0&&(_0x42f074+=_0x44f46c[_0x316735(0x2fa)]['value']),_0x44f46c[_0x316735(0x3ad)][_0x316735(0x343)]===!0x0&&(_0x42f074+=_0x44f46c['right'][_0x316735(0x26a)]));}}};if(_0x3222b6[_0xd1a6e8(0x2da)][_0xd1a6e8(0x2e2)](_0x173348=>j(_0x173348,_0x50b964)),_0x42f074>_0x19ec78)throw new D('Total\x20length\x20exceeded');let _0x24ba51=_0x19ec78-_0x42f074+_0xd0e382,_0x56f7f1=0x0;const _0x37b135=_0x450371=>{const _0x553da2=_0xd1a6e8;if(_0x450371['type']===_0x553da2(0x244)){const _0x3f5e1b=_0x450371;if(_0x3f5e1b[_0x553da2(0x3ad)][_0x553da2(0x275)]===_0x553da2(0x221)&&_0x3f5e1b[_0x553da2(0x2fa)]['type']===_0x553da2(0x2fb)&&_0x3f5e1b[_0x553da2(0x2fa)][_0x553da2(0x261)]==='n'&&_0x3f5e1b[_0x553da2(0x360)]==='*'){_0x56f7f1=Math[_0x553da2(0x214)](_0x24ba51/(_0x3f5e1b[_0x553da2(0x3ad)][_0x553da2(0x26a)]+_0xd0e382));const _0x2532de=(_0x56f7f1-0x1)*_0xd0e382,_0x383f56=_0x56f7f1*_0x3f5e1b[_0x553da2(0x3ad)]['value'];_0x24ba51+=-_0x2532de-_0x383f56;}}};_0x3222b6[_0xd1a6e8(0x2da)]['forEach'](_0x461843=>j(_0x461843,_0x37b135));let _0x284964=0x0;const _0x2384dd=_0x4a72c1=>{const _0xa0ff35=_0xd1a6e8;_0x4a72c1[_0xa0ff35(0x275)]==='BinaryExpression'&&(_0x4a72c1[_0xa0ff35(0x2fa)][_0xa0ff35(0x275)]===_0xa0ff35(0x221)&&_0x4a72c1['left'][_0xa0ff35(0x343)]===!0x1&&(_0x284964+=_0x4a72c1[_0xa0ff35(0x2fa)]['value']),_0x4a72c1[_0xa0ff35(0x3ad)][_0xa0ff35(0x275)]==='NumberLiteral'&&_0x4a72c1['right'][_0xa0ff35(0x343)]===!0x1&&(_0x284964+=_0x4a72c1[_0xa0ff35(0x3ad)]['value'])),_0x4a72c1[_0xa0ff35(0x275)]===_0xa0ff35(0x221)&&_0x4a72c1['hasMillimeterSuffix']===!0x1&&(_0x284964+=_0x4a72c1['value']);};_0x3222b6[_0xd1a6e8(0x2da)]['forEach'](_0x1507c6=>{j(_0x1507c6,_0x2384dd);});const _0x245a63=_0x24ba51/_0x284964,_0x11fd47=[],_0x2c60d6=_0x4f08cb=>{const _0x4a6f8f=_0xd1a6e8;let _0x36e8ca=0x0,_0x32d9c9=0x0;if(_0x4f08cb[_0x4a6f8f(0x275)]==='NumberLiteral')_0x4f08cb['hasMillimeterSuffix']===!0x1&&(_0x36e8ca+=_0x4f08cb[_0x4a6f8f(0x26a)]*_0x245a63),_0x4f08cb[_0x4a6f8f(0x343)]===!0x0&&(_0x32d9c9+=_0x4f08cb[_0x4a6f8f(0x26a)]),_0x11fd47[_0x4a6f8f(0x2d1)](Number((_0x36e8ca+_0x32d9c9)[_0x4a6f8f(0x2ed)](0x2)));else{if(_0x4f08cb[_0x4a6f8f(0x275)]===_0x4a6f8f(0x244)&&(_0x4f08cb['left']['type']===_0x4a6f8f(0x221)&&_0x4f08cb[_0x4a6f8f(0x3ad)][_0x4a6f8f(0x275)]===_0x4a6f8f(0x221)&&(_0x4f08cb[_0x4a6f8f(0x2fa)][_0x4a6f8f(0x343)]===!0x1&&(_0x36e8ca+=_0x4f08cb[_0x4a6f8f(0x2fa)][_0x4a6f8f(0x26a)]*_0x245a63),_0x4f08cb[_0x4a6f8f(0x2fa)][_0x4a6f8f(0x343)]===!0x0&&(_0x32d9c9+=_0x4f08cb[_0x4a6f8f(0x2fa)][_0x4a6f8f(0x26a)]),_0x4f08cb[_0x4a6f8f(0x3ad)][_0x4a6f8f(0x343)]===!0x1&&(_0x36e8ca+=_0x4f08cb[_0x4a6f8f(0x3ad)][_0x4a6f8f(0x26a)]*_0x245a63),_0x4f08cb[_0x4a6f8f(0x3ad)]['hasMillimeterSuffix']===!0x0&&(_0x32d9c9+=_0x4f08cb['right'][_0x4a6f8f(0x26a)]),_0x11fd47['push'](Number((_0x36e8ca+_0x32d9c9)[_0x4a6f8f(0x2ed)](0x2)))),_0x4f08cb['left'][_0x4a6f8f(0x275)]===_0x4a6f8f(0x2fb)&&_0x4f08cb[_0x4a6f8f(0x2fa)][_0x4a6f8f(0x261)]==='n'&&_0x4f08cb[_0x4a6f8f(0x3ad)][_0x4a6f8f(0x275)]===_0x4a6f8f(0x221))){_0x32d9c9+=_0x4f08cb[_0x4a6f8f(0x3ad)][_0x4a6f8f(0x26a)];for(let _0x3a2679=0x0;_0x3a2679<_0x56f7f1;_0x3a2679++)_0x4f08cb[_0x4a6f8f(0x3ad)][_0x4a6f8f(0x343)]===!0x0&&_0x11fd47[_0x4a6f8f(0x2d1)](Number(_0x32d9c9[_0x4a6f8f(0x2ed)](0x2)));}}};return _0x3222b6[_0xd1a6e8(0x2da)][_0xd1a6e8(0x2e2)](_0x5b3bfa=>{j(_0x5b3bfa,_0x2c60d6);}),_0x11fd47;}catch{return new D(_0xd1a6e8(0x389));}}},pt=new at(),dt=new ot(),gt=new ht(),xt=(_0x5e1eed,_0x17fb3a,_0x3edc61,_0x2e8110)=>{const _0x166304=a0_0x235465;try{const _0x224569=pt[_0x166304(0x252)](_0x5e1eed),_0x3a907c=dt[_0x166304(0x231)](_0x224569),_0x22a110=gt[_0x166304(0x228)](_0x3a907c,{},_0x2e8110);if(_0x22a110&&!(_0x22a110 instanceof D)){const _0x28d1da=new mt()['calculateSections'](_0x22a110,_0x17fb3a,_0x3edc61);if(_0x28d1da&&_0x28d1da instanceof D)throw new Error(_0x28d1da[_0x166304(0x1ff)]);return _0x28d1da;}return _0x22a110||new D(_0x166304(0x29a));}catch(_0x3c7131){return new D(_0x3c7131[_0x166304(0x1ff)]);}};function Et(_0x30f0c9){const _0x58377a=a0_0x235465,_0x25216b=/^(\d+)\*\{(\d+)\}$/,_0x51984b=_0x30f0c9['match'](_0x25216b);if(_0x51984b){const _0x15326d=parseInt(_0x51984b[0x1],0xa),_0x538a53=_0x51984b[0x2];return _0x15326d>0x0?Array(_0x15326d)['fill'](_0x538a53)[_0x58377a(0x29d)](':'):'';}return _0x30f0c9;}function St(_0x37277a){const _0x2cc913=a0_0x235465,_0x6d611c=_0x37277a[_0x2cc913(0x2ca)]()['match'](/^(\d+(?:\.\d+)?)\s*\*\s*\{.+\}$/);return _0x6d611c?Number(_0x6d611c[0x1]):_0x37277a;}function vt(_0xd60dea,_0x5dffbc,_0x57dea2){const _0x408190=a0_0x235465;let _0x18686c=0x0;const {LINDIV1:_0x76219f,DIVDIR:_0x275b12,HORDEFTYPE:_0xd226d1,DIVELEM1:_0x1e702e}=_0xd60dea;let _0xe10585=_0x408190(0x3be),_0x516dd5=!0x1;if(_0x76219f==='')return{'divisionType':_0xe10585,'zone_dimensions':[],'divided_length_list':[]};if(_0x275b12==='H'){if(_0xd226d1==='W')_0x18686c=_0x5dffbc[_0x408190(0x3be)],_0xe10585='width';else{if(_0xd226d1==='D')_0x18686c=_0x5dffbc['depth'],_0xe10585=_0x408190(0x390);else{if(_0xd226d1==='P'){if(_0x1e702e===0x0||_0x1e702e===0x2)_0x18686c=_0x5dffbc[_0x408190(0x3be)],_0xe10585=_0x408190(0x3be);else{if(_0x1e702e===0x1||_0x1e702e===0x3)_0x18686c=_0x5dffbc[_0x408190(0x390)],_0xe10585=_0x408190(0x390);else throw new Error('Unhandled\x20case:\x20DIVELEM1\x20=\x20'+_0x1e702e);}}else throw new Error(_0x408190(0x37b)+_0xd226d1);}}}else{if(_0x275b12==='V')_0x18686c=_0x5dffbc['height'],_0xe10585=_0x408190(0x25f);else{if(_0x275b12==='A')_0x18686c=_0x5dffbc['width'],_0xe10585='article';else{if(_0x275b12==='I')_0x18686c=_0x5dffbc['width'],_0xe10585=_0x408190(0x2bc);else throw new Error(_0x408190(0x2b7)+_0x275b12);}}}let _0xb6c815=[];const _0x55dbfb=Et(_0x76219f);if(_0xe10585===_0x408190(0x2bc)){const _0x5f05da=St(_0x76219f);_0xb6c815=Array(_0x5f05da)[_0x408190(0x236)](_0x18686c);}else _0xe10585==='article'?_0xb6c815=[_0x18686c]:_0xb6c815=xt(_0x55dbfb,_0x18686c,_0x57dea2);if(!Array[_0x408190(0x368)](_0xb6c815))return{'divisionType':_0xe10585,'zone_dimensions':[],'divided_length_list':[]};_0xd226d1==='P'&&(_0x1e702e===0x2||_0x1e702e===0x3)&&(_0x516dd5=!0x0,_0xb6c815=[..._0xb6c815]['reverse']());const _0x35c970=_0xb6c815[_0x408190(0x2b4)](_0x2ebf24=>{const _0x3b0163=_0x408190;if(_0xe10585==='width')return{'width':_0x2ebf24,'height':_0x5dffbc['height'],'depth':_0x5dffbc[_0x3b0163(0x390)]};if(_0xe10585==='depth')return{'width':_0x5dffbc['width'],'height':_0x5dffbc[_0x3b0163(0x25f)],'depth':_0x2ebf24};if(_0xe10585==='height')return{'width':_0x5dffbc[_0x3b0163(0x3be)],'height':_0x2ebf24,'depth':_0x5dffbc[_0x3b0163(0x390)]};if(_0xe10585===_0x3b0163(0x302)||_0xe10585===_0x3b0163(0x2bc))return{'width':_0x5dffbc[_0x3b0163(0x3be)],'height':_0x5dffbc[_0x3b0163(0x25f)],'depth':_0x5dffbc[_0x3b0163(0x390)]};throw new Error(_0x3b0163(0x2b7)+_0x275b12);});return{'isReversed':_0x516dd5,'zone_dimensions':_0x35c970,'divisionType':_0xe10585,'divided_length_list':_0xb6c815};}function Tt({divisionType:_0x2ce074,parentDimensions:_0x1e55ce,lengthList:_0x20e2a8,childTREEIDs:_0x3677ac,dividerThk:_0x59381c}){const _0x10500c=a0_0x235465,_0x596c66=-_0x1e55ce[_0x10500c(0x3be)]/0x2,_0x2ad11e=-_0x1e55ce[_0x10500c(0x390)]/0x2,_0x4d5c98=-_0x1e55ce['height']/0x2;return{'childPositions':_0x20e2a8[_0x10500c(0x2b5)]((_0x54a315,_0x4b579b,_0x50d57f)=>{const _0x4d09cd=_0x10500c;let _0xe70236=0x0,_0x2c38c3=0x0,_0x2266fd=0x0,_0x30e9e7;return _0x2ce074===_0x4d09cd(0x3be)?(_0xe70236=_0x596c66+_0x54a315['cumulativeX']+_0x4b579b/0x2,_0x2c38c3=0x0,_0x2266fd=0x0,_0x30e9e7={'width':_0x4b579b,'height':_0x1e55ce[_0x4d09cd(0x25f)],'depth':_0x1e55ce[_0x4d09cd(0x390)]},_0x54a315[_0x4d09cd(0x225)]+=_0x4b579b+_0x59381c):_0x2ce074===_0x4d09cd(0x390)?(_0xe70236=0x0,_0x2c38c3=_0x2ad11e+_0x54a315[_0x4d09cd(0x3b4)]+_0x4b579b/0x2,_0x2266fd=0x0,_0x30e9e7={'width':_0x1e55ce['width'],'height':_0x1e55ce[_0x4d09cd(0x25f)],'depth':_0x4b579b},_0x54a315['cumulativeY']+=_0x4b579b+_0x59381c):_0x2ce074===_0x4d09cd(0x2bc)||_0x2ce074==='article'?(_0xe70236=0x0,_0x2c38c3=0x0,_0x2266fd=0x0,_0x30e9e7={'width':_0x4b579b,'height':_0x1e55ce['height'],'depth':_0x1e55ce[_0x4d09cd(0x390)]}):(_0xe70236=0x0,_0x2c38c3=0x0,_0x2266fd=_0x4d5c98+_0x54a315[_0x4d09cd(0x358)]+_0x4b579b/0x2,_0x30e9e7={'width':_0x1e55ce[_0x4d09cd(0x3be)],'height':_0x4b579b,'depth':_0x1e55ce['depth']},_0x54a315[_0x4d09cd(0x358)]+=_0x4b579b+_0x59381c),_0x54a315[_0x4d09cd(0x20f)]['push']({'x':_0xe70236,'y':_0x2c38c3,'z':_0x2266fd,'zone_dims':_0x30e9e7,'TREEID':_0x3677ac[_0x50d57f]}),_0x54a315;},{'cumulativeX':0x0,'cumulativeY':0x0,'cumulativeZ':0x0,'positions':[]})['positions'],'dividerType':_0x2ce074};}function Nt(_0x41153b){return{'front':ee(Re(_0x41153b)),'left':ee(Fe(_0x41153b)),'right':ee(Ve(_0x41153b)),'back':ee(je(_0x41153b))};}function Mt(_0x2630f2,_0x4028eb,_0x50deb5){const _0x38194b=a0_0x235465;return{'front':_0x2630f2[_0x38194b(0x294)]?.[_0x38194b(0x2a4)]||0x0,'right':_0x2630f2[_0x38194b(0x3ad)]?.['thk']||0x0,'back':_0x2630f2['back']?.[_0x38194b(0x2a4)]||0x0,'left':_0x2630f2[_0x38194b(0x2fa)]?.[_0x38194b(0x2a4)]||0x0,'top':_0x4028eb,'bottom':_0x50deb5};}function yt(_0xf1c445){const _0x682cd3=a0_0x235465;return{'front':_0xf1c445[_0x682cd3(0x294)]?.[_0x682cd3(0x20b)]||0x0,'right':_0xf1c445[_0x682cd3(0x3ad)]?.[_0x682cd3(0x20b)]||0x0,'back':_0xf1c445[_0x682cd3(0x25a)]?.['inset']||0x0,'left':_0xf1c445[_0x682cd3(0x2fa)]?.['inset']||0x0};}function It(_0x228e45,_0x22368c){const _0x27d991=a0_0x235465;return{'dimensions':{'width':_0x228e45['width']-_0x22368c['left']-_0x22368c[_0x27d991(0x3ad)],'height':_0x228e45['height'],'depth':_0x228e45[_0x27d991(0x390)]-_0x22368c[_0x27d991(0x294)]-_0x22368c[_0x27d991(0x25a)]},'position':{'x':_0x22368c[_0x27d991(0x2fa)]/0x2-_0x22368c['right']/0x2,'y':_0x22368c[_0x27d991(0x294)]/0x2-_0x22368c[_0x27d991(0x25a)]/0x2,'z':0x0}};}function bt(_0x1dcba6,_0x4239c2){const _0x3191ee=a0_0x235465;return{'dimensions':{'width':_0x1dcba6[_0x3191ee(0x274)][_0x3191ee(0x3be)]-_0x4239c2[_0x3191ee(0x2fa)]-_0x4239c2[_0x3191ee(0x3ad)],'height':_0x1dcba6['dimensions'][_0x3191ee(0x25f)]-_0x4239c2['top']-_0x4239c2[_0x3191ee(0x2b3)],'depth':_0x1dcba6[_0x3191ee(0x274)][_0x3191ee(0x390)]-_0x4239c2[_0x3191ee(0x294)]-_0x4239c2[_0x3191ee(0x25a)]},'position':{'x':_0x4239c2['left']/0x2-_0x4239c2[_0x3191ee(0x3ad)]/0x2,'y':_0x4239c2[_0x3191ee(0x294)]/0x2-_0x4239c2['back']/0x2,'z':_0x4239c2['bottom']/0x2-_0x4239c2['top']/0x2}};}function _t(_0x3bbdd6,_0x317fd9,_0x4dd9dc,_0x2c472a){const _0x15f0af=a0_0x235465;return _0x317fd9['divisionType']?Tt({'divisionType':_0x317fd9[_0x15f0af(0x341)],'parentDimensions':_0x3bbdd6,'lengthList':_0x317fd9[_0x15f0af(0x1fa)],'childTREEIDs':_0x2c472a,'dividerThk':Number(_0x4dd9dc)||0x0}):{'childPositions':[],'dividerType':'height'};}function Dt(_0x34d3ee,_0x4f67f6,_0x238393,_0x5803a7){const _0xe0c9dc=a0_0x235465;if(!_0x238393)return{'childPositions':[],'dividerType':_0xe0c9dc(0x25f)};const _0x5785cf=vt(_0x238393,_0x34d3ee[_0xe0c9dc(0x274)],_0x4f67f6);return _0x5803a7=_0x5785cf['isReversed']?_0x5803a7[_0xe0c9dc(0x2cf)]():_0x5803a7,_t(_0x34d3ee[_0xe0c9dc(0x274)],_0x5785cf,_0x4f67f6,_0x5803a7);}function ze(_0x43fd0c,_0x60d9bc,_0x2f220a=0x0,_0x484fcb=0x0){const _0xfa3649=_0x43fd0c/0x2,_0x5f11b3=_0x60d9bc/0x2,_0x5da599=[{'x':_0xfa3649,'y':-_0x5f11b3},{'x':-_0xfa3649,'y':-_0x5f11b3},{'x':-_0xfa3649+_0x2f220a,'y':_0x5f11b3},{'x':_0xfa3649-_0x484fcb,'y':_0x5f11b3}];return{'points':_0x5da599,get 'svgPath'(){const _0x4819a8=a0_0x5bf0;return'M\x20'+_0x5da599[_0x4819a8(0x2b4)](_0x4a727a=>_0x4a727a['x']+','+_0x4a727a['y'])[_0x4819a8(0x29d)]('\x20L\x20')+'\x20Z';},get 'shape'(){const _0x4f404c=a0_0x5bf0,_0x511ce4=new ue[(_0x4f404c(0x3aa))]();return _0x5da599[_0x4f404c(0x2e2)]((_0x1ca4be,_0x14d1bc)=>_0x14d1bc===0x0?_0x511ce4[_0x4f404c(0x25d)](_0x1ca4be['x'],_0x1ca4be['y']):_0x511ce4[_0x4f404c(0x320)](_0x1ca4be['x'],_0x1ca4be['y'])),_0x511ce4;}};}function G({length:_0x434a08,width:_0x400c67,thk:_0x2f7fb8,material:_0x1c49b0='gray',opacity:_0x32e2cb=0.2,isSelected:_0x22179e=!0x1,isHovered:_0x16753f=!0x1,onClick:_0x839d40,onPointerEnter:_0x10ad63,onPointerLeave:_0x2077a6,startPanelThk:_0x589fcc=0x0,endPanelThk:_0x5c0e79=0x0}){const _0xe9f776=a0_0x235465,_0x87e22e=_0x22179e?_0xe9f776(0x240):_0x16753f?'#0066ff':_0x1c49b0,_0x38da7a=_0x22179e?0.8:_0x16753f?0.6:_0x32e2cb,_0x525db0=M[_0xe9f776(0x1f6)](()=>{const _0x21b9e=_0xe9f776;if(_0x589fcc!==0x0||_0x5c0e79!==0x0){const {shape:_0x3cd709}=ze(_0x400c67,_0x2f7fb8,_0x589fcc,_0x5c0e79),_0x3072fa=new ue[(_0x21b9e(0x304))](_0x3cd709,{'depth':_0x434a08/E,'bevelEnabled':!0x1,'steps':0x1});return _0x3072fa['center'](),_0x3072fa[_0x21b9e(0x32d)](-Math['PI']/0x2),_0x3072fa[_0x21b9e(0x238)](Math['PI']/0x2),_0x3072fa;}else return new ue[(_0x21b9e(0x2ec))](_0x434a08/E,_0x400c67/E,_0x2f7fb8/E);},[_0x434a08,_0x400c67,_0x2f7fb8,_0x589fcc,_0x5c0e79]);return c['jsx'](_0xe9f776(0x2ab),{'rotation':[0x0,0x0,0x0],'children':c[_0xe9f776(0x36e)]('mesh',{'geometry':_0x525db0,'onClick':_0x839d40,'onPointerEnter':_0x10ad63,'onPointerLeave':_0x2077a6,'children':[c[_0xe9f776(0x345)](_0xe9f776(0x375),{'color':_0x87e22e,'opacity':_0x38da7a,'transparent':!0x0}),c['jsx'](De[_0xe9f776(0x39f)],{'color':_0x22179e?_0xe9f776(0x240):_0x16753f?_0xe9f776(0x2db):'black'})]})});}function B({dim_x:_0x4f8e04,dim_y:_0xb1f54,fill:_0x235b7f=a0_0x235465(0x326),text:_0x1b567b='',stroke_width:_0x36cc2a=0x2,rotate:_0x1a4770=0x0,isSelected:_0x2346eb=!0x1,isHovered:_0x59641f=!0x1,onClick:_0x3154d,onMouseEnter:_0x4ea128,onMouseLeave:_0x2780aa,startPanelThk:_0x14c748=0x0,endPanelThk:_0x4b3130=0x0}){const _0xc6aa0f=a0_0x235465,{svgPath:_0x187181}=ze(_0x4f8e04,_0xb1f54,_0x14c748,_0x4b3130),_0x4f06ed=_0x2346eb?_0xc6aa0f(0x240):_0x59641f?_0xc6aa0f(0x2db):_0xc6aa0f(0x3a1),_0x964c8=_0x2346eb?_0x36cc2a*0x2:_0x59641f?_0x36cc2a*1.5:_0x36cc2a,_0x3cec54=_0x2346eb?0.8:_0x59641f?0.7:0.5;return c[_0xc6aa0f(0x36e)]('g',{'transform':_0xc6aa0f(0x346)+_0x1a4770+')','children':[c[_0xc6aa0f(0x345)](_0xc6aa0f(0x2a9),{'d':_0x187181,'stroke':_0x4f06ed,'strokeWidth':_0x964c8,'fill':_0x235b7f,'strokeLinejoin':_0xc6aa0f(0x26e),'strokeMiterlimit':'1','opacity':_0x3cec54,'onClick':_0x3154d,'onMouseEnter':_0x4ea128,'onMouseLeave':_0x2780aa,'style':{'cursor':_0x3154d?'pointer':'default'}}),c['jsx'](_0xc6aa0f(0x2c4),{'transform':_0xc6aa0f(0x232),'x':0x0,'y':0x0,'textAnchor':_0xc6aa0f(0x2a6),'dominantBaseline':_0xc6aa0f(0x2a6),'fontSize':0xa,'children':_0x1b567b})]});}function q(_0x20b848){const _0xf3d9fa=a0_0x235465,_0x8fe277=M[_0xf3d9fa(0x35a)](O);if(!_0x8fe277)throw new Error(_0xf3d9fa(0x210));const {selectedElem:_0x43e52a,setSelectedElem:_0x13693b,hoveredElem:_0x531088,setHoveredElem:_0x3aefe6}=_0x8fe277,_0x124025=_0x43e52a===_0x20b848;return{'isSelected':_0x124025,'isHovered':_0x531088===_0x20b848,'handleClick':()=>{_0x13693b(_0x124025?null:_0x20b848);},'handleMouseEnter':()=>{_0x3aefe6(_0x20b848);},'handleMouseLeave':()=>{_0x3aefe6(null);}};}function kt({TREEID:_0x599ca9,dimension:_0x3905e9,view:_0x43f2a6,helper:_0x5b8906}){const _0x40f589=a0_0x235465,_0x3d42c3=_0x5b8906[_0x40f589(0x294)],_0x1fb3d8=M['useContext'](O),{isSelected:_0x3dd9b3,isHovered:_0x24aa67,handleClick:_0x5dc025,handleMouseEnter:_0x4c8d1c,handleMouseLeave:_0xe71950}=q(_0x599ca9);if(!_0x3d42c3||!_0x1fb3d8)return;const {CPNAME:_0x32ff38}=_0x3d42c3;if(!_0x32ff38)return null;const {elmTrimThk:_0x3688fb}=_0x3d42c3,_0x1b3bff=_0x5b8906[_0x40f589(0x2fa)]?.['thk'],_0x589b6e=_0x5b8906[_0x40f589(0x3ad)]?.['thk'],_0xbd59e=(_0x3d42c3['trim']['start']==='S'?_0x1b3bff:0x0)??0x0,_0x3f4793=(_0x3d42c3[_0x40f589(0x2ca)]['end']==='S'?_0x589b6e:0x0)??0x0,_0x4b7a32=(_0x3d42c3[_0x40f589(0x2ca)][_0x40f589(0x3bd)]==='M'?_0x1b3bff:0x0)??0x0,_0x508a6d=(_0x3d42c3[_0x40f589(0x2ca)][_0x40f589(0x2d0)]==='M'?_0x589b6e:0x0)??0x0,_0x59fbc1=_0x3905e9['height']-_0x3688fb[_0x40f589(0x2a0)]-_0x3688fb['bottom']+_0x3d42c3['oversize'][_0x40f589(0x2a0)]+_0x3d42c3[_0x40f589(0x3a5)][_0x40f589(0x2b3)],_0x4f6a0d=_0x3905e9[_0x40f589(0x3be)]-_0xbd59e-_0x3f4793+_0x3d42c3[_0x40f589(0x3a5)][_0x40f589(0x3bd)]+_0x3d42c3['oversize'][_0x40f589(0x2d0)],_0x308cfe=_0x3d42c3['thk'],_0x109077=-(_0x3d42c3[_0x40f589(0x3a5)][_0x40f589(0x3bd)]/0x2-_0x3d42c3[_0x40f589(0x3a5)][_0x40f589(0x2d0)]/0x2-_0xbd59e/0x2+_0x3f4793/0x2),_0x453d4e=_0x3d42c3[_0x40f589(0x3a5)][_0x40f589(0x2b3)]/0x2-_0x3d42c3[_0x40f589(0x3a5)][_0x40f589(0x2a0)]/0x2+_0x3688fb[_0x40f589(0x2b3)]/0x2-_0x3688fb['top']/0x2,_0x5513fb=-(_0x3905e9[_0x40f589(0x390)]/0x2-_0x308cfe/0x2);return _0x43f2a6===N[_0x40f589(0x351)]?c[_0x40f589(0x345)](_0x40f589(0x2ab),{'position':[_0x109077/E,_0x5513fb/E,_0x453d4e/E],'rotation':[Math['PI']/0x2,0x0,Math['PI']/0x2],'children':c[_0x40f589(0x345)](G,{'length':_0x59fbc1,'width':_0x4f6a0d,'thk':_0x308cfe,'treeId':_0x599ca9,'isSelected':_0x3dd9b3,'isHovered':_0x24aa67,'onClick':_0x5dc025,'onPointerEnter':_0x4c8d1c,'onPointerLeave':_0xe71950,'startPanelThk':_0x4b7a32,'endPanelThk':_0x508a6d})}):c[_0x40f589(0x345)]('g',{'transform':'translate('+_0x109077+','+(_0x43f2a6===N[_0x40f589(0x2df)]?_0x5513fb:_0x453d4e)+_0x40f589(0x243),'children':c[_0x40f589(0x345)](B,{'dim_x':_0x4f6a0d,'dim_y':_0x43f2a6===N['_2D_TOP']?_0x308cfe:_0x59fbc1,'text':_0x40f589(0x2f3)+_0x59fbc1+_0x40f589(0x322)+_0x4f6a0d+_0x40f589(0x322)+_0x308cfe,'treeId':_0x599ca9,'isSelected':_0x3dd9b3,'isHovered':_0x24aa67,'onClick':_0x5dc025,'onMouseEnter':_0x4c8d1c,'onMouseLeave':_0xe71950,'startPanelThk':_0x43f2a6===N['_2D_TOP']?_0x4b7a32:0x0,'endPanelThk':_0x43f2a6===N[_0x40f589(0x2df)]?_0x508a6d:0x0})});}function a0_0x5bf0(_0x5cc426,_0x415b42){_0x5cc426=_0x5cc426-0x1ee;const _0x4094d1=a0_0x4094();let _0x5bf0bc=_0x4094d1[_0x5cc426];return _0x5bf0bc;}const Q=({view:_0x3a8917=N[a0_0x235465(0x351)],position:_0x5983c7=[0x0,0x0,0x0],rotation:_0x43fb75=[0x0,0x0,0x0],children:_0x518169})=>{const _0x1f7dc1=a0_0x235465;if(_0x3a8917===N[_0x1f7dc1(0x351)])return c[_0x1f7dc1(0x345)]('group',{'position':[_0x5983c7[0x0]/E,_0x5983c7[0x1]/E,_0x5983c7[0x2]/E],'rotation':_0x43fb75,'children':_0x518169});const _0x16438a=_0x5983c7[0x0],_0x13c077=_0x3a8917===N[_0x1f7dc1(0x2df)]?_0x5983c7[0x1]:_0x5983c7[0x2],_0x4439e9=_0x43fb75[0x2]*(0xb4/Math['PI']);return c[_0x1f7dc1(0x345)]('g',{'transform':_0x1f7dc1(0x396)+_0x16438a+','+_0x13c077+_0x1f7dc1(0x248)+_0x4439e9+')','children':_0x518169});};function At({TREEID:_0x13490d,dimension:_0x36f730,view:_0x3abcb9,helper:_0x5e5ea3}){const _0x426e77=a0_0x235465,_0x245d4a=_0x5e5ea3[_0x426e77(0x2fa)],_0x37cf5a=M['useContext'](O),{isSelected:_0x5c095e,isHovered:_0x461838,handleClick:_0x486c29,handleMouseEnter:_0x2b0ba7,handleMouseLeave:_0x39a93b}=q(_0x13490d);if(!_0x245d4a||!_0x37cf5a)return;const {CPNAME:_0x13cd78}=_0x245d4a;if(!_0x13cd78)return null;const {elmTrimThk:_0x28d441}=_0x245d4a,_0x1320fe=_0x5e5ea3[_0x426e77(0x25a)]?.['thk'],_0x4f1eca=_0x5e5ea3[_0x426e77(0x294)]?.['thk'],_0x7f1eba=(_0x245d4a[_0x426e77(0x2ca)][_0x426e77(0x3bd)]==='S'?_0x1320fe:0x0)??0x0,_0x18f8dc=(_0x245d4a[_0x426e77(0x2ca)]['end']==='S'?_0x4f1eca:0x0)??0x0,_0x434a71=(_0x245d4a['trim']['start']==='M'?_0x1320fe:0x0)??0x0,_0xd10fe5=(_0x245d4a[_0x426e77(0x2ca)]['end']==='M'?_0x4f1eca:0x0)??0x0,_0x36d1c9=_0x36f730['height']-_0x28d441[_0x426e77(0x2a0)]-_0x28d441[_0x426e77(0x2b3)]+_0x245d4a[_0x426e77(0x3a5)][_0x426e77(0x2a0)]+_0x245d4a['oversize'][_0x426e77(0x2b3)],_0x416714=_0x36f730[_0x426e77(0x390)]-_0x7f1eba-_0x18f8dc+_0x245d4a[_0x426e77(0x3a5)][_0x426e77(0x3bd)]+_0x245d4a[_0x426e77(0x3a5)][_0x426e77(0x2d0)],_0x110480=_0x245d4a[_0x426e77(0x2a4)],_0x32afbd=-(_0x36f730[_0x426e77(0x3be)]/0x2-_0x110480/0x2),_0x241567=_0x245d4a['oversize'][_0x426e77(0x3bd)]/0x2-_0x245d4a[_0x426e77(0x3a5)][_0x426e77(0x2d0)]/0x2-_0x7f1eba/0x2+_0x18f8dc/0x2,_0x4ac462=_0x245d4a['oversize'][_0x426e77(0x2b3)]/0x2-_0x245d4a[_0x426e77(0x3a5)][_0x426e77(0x2a0)]/0x2+_0x28d441[_0x426e77(0x2b3)]/0x2-_0x28d441[_0x426e77(0x2a0)]/0x2;return _0x3abcb9===N[_0x426e77(0x351)]?c[_0x426e77(0x345)](_0x426e77(0x2ab),{'position':[_0x32afbd/E,_0x241567/E,_0x4ac462/E],'rotation':[0x0,-Math['PI']/0x2,0x0],'children':c[_0x426e77(0x345)](G,{'length':_0x36d1c9,'width':_0x416714,'thk':_0x110480,'treeId':_0x13490d,'isSelected':_0x5c095e,'isHovered':_0x461838,'onClick':_0x486c29,'onPointerEnter':_0x2b0ba7,'onPointerLeave':_0x39a93b,'startPanelThk':_0x434a71,'endPanelThk':_0xd10fe5})}):c[_0x426e77(0x345)]('g',{'transform':'translate('+_0x32afbd+','+(_0x3abcb9===N[_0x426e77(0x2df)]?_0x241567:_0x4ac462)+_0x426e77(0x3c0),'children':c[_0x426e77(0x345)](B,{'dim_x':_0x3abcb9===N[_0x426e77(0x2df)]?_0x416714:_0x36d1c9,'dim_y':_0x110480,'text':_0x426e77(0x29f)+_0x36d1c9+_0x426e77(0x322)+_0x416714+_0x426e77(0x322)+_0x110480,'treeId':_0x13490d,'rotate':0xb4,'isSelected':_0x5c095e,'isHovered':_0x461838,'onClick':_0x486c29,'onMouseEnter':_0x2b0ba7,'onMouseLeave':_0x39a93b,'startPanelThk':_0x3abcb9===N[_0x426e77(0x2df)]?_0x434a71:0x0,'endPanelThk':_0x3abcb9===N[_0x426e77(0x2df)]?_0xd10fe5:0x0})});}function Ct({TREEID:_0x29b117,dimension:_0x5bdcc9,view:_0x1356e5,helper:_0x2f90cc}){const _0x50e6a5=a0_0x235465,_0x5a3c73=_0x2f90cc['back'],_0x3a6b1b=M[_0x50e6a5(0x35a)](O),{isSelected:_0x2014db,isHovered:_0x1039ab,handleClick:_0x40ee57,handleMouseEnter:_0x92fbe5,handleMouseLeave:_0x4ed987}=q(_0x29b117);if(!_0x5a3c73||!_0x3a6b1b)return;const {CPNAME:_0x5a4127}=_0x5a3c73;if(!_0x5a4127)return null;const {elmTrimThk:_0x2c3b2b}=_0x5a3c73,_0x4121f1=_0x2f90cc['right']?.[_0x50e6a5(0x2a4)],_0x341ecc=_0x2f90cc[_0x50e6a5(0x2fa)]?.[_0x50e6a5(0x2a4)],_0x3595bf=(_0x5a3c73[_0x50e6a5(0x2ca)][_0x50e6a5(0x3bd)]==='S'?_0x4121f1:0x0)??0x0,_0x392b18=(_0x5a3c73[_0x50e6a5(0x2ca)][_0x50e6a5(0x2d0)]==='S'?_0x341ecc:0x0)??0x0,_0x1b550b=(_0x5a3c73['trim']['start']==='M'?_0x4121f1:0x0)??0x0,_0x14c06d=(_0x5a3c73[_0x50e6a5(0x2ca)][_0x50e6a5(0x2d0)]==='M'?_0x341ecc:0x0)??0x0,_0xccdd15=_0x5bdcc9[_0x50e6a5(0x25f)]-_0x2c3b2b[_0x50e6a5(0x2a0)]-_0x2c3b2b[_0x50e6a5(0x2b3)]+_0x5a3c73[_0x50e6a5(0x3a5)]['top']+_0x5a3c73['oversize'][_0x50e6a5(0x2b3)],_0xc06886=_0x5bdcc9['width']-_0x3595bf-_0x392b18+_0x5a3c73[_0x50e6a5(0x3a5)][_0x50e6a5(0x3bd)]+_0x5a3c73['oversize'][_0x50e6a5(0x2d0)],_0x416ff3=_0x5a3c73[_0x50e6a5(0x2a4)],_0x33cae5=_0x5a3c73['oversize']['start']/0x2-_0x5a3c73[_0x50e6a5(0x3a5)][_0x50e6a5(0x2d0)]/0x2-_0x3595bf/0x2+_0x392b18/0x2,_0x5d5bb6=_0x5bdcc9['depth']/0x2-_0x416ff3/0x2,_0x50fe77=_0x5a3c73[_0x50e6a5(0x3a5)][_0x50e6a5(0x2b3)]/0x2-_0x5a3c73[_0x50e6a5(0x3a5)][_0x50e6a5(0x2a0)]/0x2+_0x2c3b2b[_0x50e6a5(0x2b3)]/0x2-_0x2c3b2b['top']/0x2;return _0x1356e5===N[_0x50e6a5(0x351)]?c[_0x50e6a5(0x36e)](_0x50e6a5(0x2ab),{'position':[_0x33cae5/E,_0x5d5bb6/E,_0x50fe77/E],'rotation':[Math['PI']/0x2,Math['PI'],Math['PI']/0x2],'children':[c[_0x50e6a5(0x345)](G,{'length':_0xccdd15,'width':_0xc06886,'thk':_0x416ff3,'treeId':_0x29b117,'isSelected':_0x2014db,'isHovered':_0x1039ab,'onClick':_0x40ee57,'onPointerEnter':_0x92fbe5,'onPointerLeave':_0x4ed987,'startPanelThk':_0x1b550b,'endPanelThk':_0x14c06d}),c[_0x50e6a5(0x345)](De[_0x50e6a5(0x27e)],{'position':[0x0,0x0,0x0],'color':_0x50e6a5(0x2fd),'fontSize':0x14,'children':_0x29b117})]}):c[_0x50e6a5(0x345)]('g',{'transform':_0x50e6a5(0x396)+_0x33cae5+','+(_0x1356e5===N[_0x50e6a5(0x2df)]?_0x5d5bb6:_0x50fe77)+_0x50e6a5(0x243),'children':c[_0x50e6a5(0x345)](B,{'dim_x':_0xc06886,'dim_y':_0x1356e5===N[_0x50e6a5(0x2df)]?_0x416ff3:_0xccdd15,'text':_0x50e6a5(0x3a9)+_0xccdd15+_0x50e6a5(0x322)+_0xc06886+_0x50e6a5(0x322)+_0x416ff3,'treeId':_0x29b117,'isSelected':_0x2014db,'rotate':0xb4,'isHovered':_0x1039ab,'onClick':_0x40ee57,'onMouseEnter':_0x92fbe5,'onMouseLeave':_0x4ed987,'startPanelThk':_0x1356e5===N[_0x50e6a5(0x2df)]?_0x1b550b:0x0,'endPanelThk':_0x1356e5===N[_0x50e6a5(0x2df)]?_0x14c06d:0x0})});}function wt({TREEID:_0x499eab,dimension:_0xd88b27,view:_0x35efb9,helper:_0x1394a7}){const _0x5612e4=a0_0x235465,_0x29fcef=_0x1394a7[_0x5612e4(0x3ad)],_0x3fb5c5=M[_0x5612e4(0x35a)](O),{isSelected:_0x33ee28,isHovered:_0xc8ceeb,handleClick:_0x28f295,handleMouseEnter:_0x5e0f5c,handleMouseLeave:_0x310e16}=q(_0x499eab);if(!_0x29fcef||!_0x3fb5c5)return;const {CPNAME:_0x2e8665}=_0x29fcef;if(!_0x2e8665)return null;const {elmTrimThk:_0x49446a}=_0x29fcef,_0x400c12=_0x1394a7[_0x5612e4(0x294)]?.[_0x5612e4(0x2a4)],_0x35f65e=_0x1394a7['back']?.[_0x5612e4(0x2a4)],_0x957a5c=(_0x29fcef[_0x5612e4(0x2ca)]['start']==='S'?_0x400c12:0x0)??0x0,_0x2d3c8a=(_0x29fcef[_0x5612e4(0x2ca)][_0x5612e4(0x2d0)]==='S'?_0x35f65e:0x0)??0x0,_0x3da296=(_0x29fcef['trim'][_0x5612e4(0x3bd)]==='M'?_0x400c12:0x0)??0x0,_0x3e5f60=(_0x29fcef[_0x5612e4(0x2ca)]['end']==='M'?_0x35f65e:0x0)??0x0,_0x187f1e=_0xd88b27[_0x5612e4(0x25f)]-_0x49446a['top']-_0x49446a[_0x5612e4(0x2b3)]+_0x29fcef[_0x5612e4(0x3a5)]['top']+_0x29fcef['oversize'][_0x5612e4(0x2b3)],_0x52e477=_0xd88b27[_0x5612e4(0x390)]-_0x957a5c-_0x2d3c8a+_0x29fcef[_0x5612e4(0x3a5)]['start']+_0x29fcef[_0x5612e4(0x3a5)][_0x5612e4(0x2d0)],_0x3ea046=_0x29fcef[_0x5612e4(0x2a4)],_0x4c2e4e=_0xd88b27[_0x5612e4(0x3be)]/0x2-_0x3ea046/0x2,_0x1cc161=-(_0x29fcef['oversize'][_0x5612e4(0x3bd)]/0x2-_0x29fcef[_0x5612e4(0x3a5)][_0x5612e4(0x2d0)]/0x2-_0x957a5c/0x2+_0x2d3c8a/0x2),_0x87721=_0x29fcef[_0x5612e4(0x3a5)][_0x5612e4(0x2b3)]/0x2+_0x29fcef[_0x5612e4(0x3a5)]['top']/0x2+_0x49446a[_0x5612e4(0x2b3)]/0x2-_0x49446a['top']/0x2;return _0x35efb9===N[_0x5612e4(0x351)]?c[_0x5612e4(0x345)]('group',{'position':[_0x4c2e4e/E,_0x1cc161/E,_0x87721/E],'rotation':[0x0,Math['PI']/0x2,Math['PI']],'children':c[_0x5612e4(0x345)](G,{'length':_0x187f1e,'width':_0x52e477,'thk':_0x3ea046,'treeId':_0x499eab,'isSelected':_0x33ee28,'isHovered':_0xc8ceeb,'onClick':_0x28f295,'onPointerEnter':_0x5e0f5c,'onPointerLeave':_0x310e16,'startPanelThk':_0x3da296,'endPanelThk':_0x3e5f60})}):c[_0x5612e4(0x345)]('g',{'transform':_0x5612e4(0x396)+_0x4c2e4e+','+(_0x35efb9===N[_0x5612e4(0x2df)]?_0x1cc161:_0x87721)+_0x5612e4(0x3c0),'children':c[_0x5612e4(0x345)](B,{'dim_x':_0x35efb9===N[_0x5612e4(0x2df)]?_0x52e477:_0x187f1e,'dim_y':_0x3ea046,'text':_0x5612e4(0x2bd)+_0x187f1e+'\x20x\x20'+_0x52e477+_0x5612e4(0x322)+_0x3ea046,'treeId':_0x499eab,'isSelected':_0x33ee28,'isHovered':_0xc8ceeb,'onClick':_0x28f295,'onMouseEnter':_0x5e0f5c,'onMouseLeave':_0x310e16,'startPanelThk':_0x35efb9===N[_0x5612e4(0x2df)]?_0x3da296:0x0,'endPanelThk':_0x35efb9===N[_0x5612e4(0x2df)]?_0x3e5f60:0x0})});}function Lt({TREEID:_0x570cef,dimension:_0xb149bc,view:_0x2e0a27,helper:_0x5292de}){const _0x9714ba=a0_0x235465,_0x96622=oe(_0x570cef),_0x3894a5=M[_0x9714ba(0x35a)](O),{isSelected:_0x169281,isHovered:_0x4b5436,handleClick:_0x275806,handleMouseEnter:_0x1eafa1,handleMouseLeave:_0x2468cc}=q(_0x570cef);if(!_0x96622||!_0x3894a5)return;const {topShelfCP:_0x47b379}=_0x96622;if(!_0x47b379)return;const _0x1179ad=(_0x5292de[_0x9714ba(0x294)]?.[_0x9714ba(0x2ca)][_0x9714ba(0x2a0)]!=='S'?_0x5292de['front']?.[_0x9714ba(0x2a4)]:0x0)??0x0,_0x47622f=(_0x5292de[_0x9714ba(0x25a)]?.['trim'][_0x9714ba(0x2a0)]!=='S'?_0x5292de['back']?.[_0x9714ba(0x2a4)]:0x0)??0x0,_0x165a67=(_0x5292de['left']?.['trim'][_0x9714ba(0x2a0)]!=='S'?_0x5292de[_0x9714ba(0x2fa)]?.['thk']:0x0)??0x0,_0x20e647=(_0x5292de[_0x9714ba(0x3ad)]?.[_0x9714ba(0x2ca)][_0x9714ba(0x2a0)]!=='S'?_0x5292de['right']?.[_0x9714ba(0x2a4)]:0x0)??0x0,_0xfe5855=_0xb149bc[_0x9714ba(0x3be)]-_0x165a67-_0x20e647,_0x56132c=_0xb149bc[_0x9714ba(0x390)]-_0x47622f-_0x1179ad,_0x15d2dc=_0x96622[_0x9714ba(0x229)],_0x4d7b4d=_0x165a67/0x2-_0x20e647/0x2,_0x1c1df4=-(_0x47622f/0x2-_0x1179ad/0x2),_0x329433=_0xb149bc[_0x9714ba(0x25f)]/0x2-_0x15d2dc/0x2;return _0x2e0a27===N[_0x9714ba(0x351)]?c[_0x9714ba(0x345)](_0x9714ba(0x2ab),{'position':[_0x4d7b4d/E,_0x1c1df4/E,_0x329433/E],'rotation':[0x0,0x0,0x0],'children':c['jsx'](G,{'length':_0xfe5855,'width':_0x56132c,'thk':_0x15d2dc,'opacity':0.8,'treeId':_0x570cef,'isSelected':_0x169281,'isHovered':_0x4b5436,'onClick':_0x275806,'onPointerEnter':_0x1eafa1,'onPointerLeave':_0x2468cc})}):c[_0x9714ba(0x345)]('g',{'transform':_0x9714ba(0x396)+_0x4d7b4d+','+(_0x2e0a27===N[_0x9714ba(0x2df)]?_0x1c1df4:_0x329433)+')','children':c[_0x9714ba(0x345)](B,{'dim_x':_0xfe5855,'dim_y':_0x2e0a27===N[_0x9714ba(0x2df)]?_0x56132c:_0x15d2dc,'text':'Top\x20'+_0x570cef+_0x9714ba(0x36c)+_0xfe5855+_0x9714ba(0x322)+_0x56132c+'\x20x\x20'+_0x15d2dc,'treeId':_0x570cef,'isSelected':_0x169281,'isHovered':_0x4b5436,'onClick':_0x275806,'onMouseEnter':_0x1eafa1,'onMouseLeave':_0x2468cc})});}function Ot({TREEID:_0x5cf929,dimension:_0x289670,view:_0x3471ac,helper:_0x34457e}){const _0x5930cd=a0_0x235465,_0x437a90=oe(_0x5cf929),_0x5ad7c6=M[_0x5930cd(0x35a)](O),{isSelected:_0x5388bf,isHovered:_0x91d306,handleClick:_0x5a49e2,handleMouseEnter:_0x2f7f13,handleMouseLeave:_0x7016ab}=q(_0x5cf929);if(!_0x437a90||!_0x5ad7c6)return;const {bottomShelfCP:_0x2ea57a}=_0x437a90;if(!_0x2ea57a)return;const _0x47f12f=(_0x34457e['front']?.[_0x5930cd(0x2ca)][_0x5930cd(0x2b3)]!=='S'?_0x34457e[_0x5930cd(0x294)]?.['thk']:0x0)??0x0,_0x4779e1=(_0x34457e['back']?.['trim'][_0x5930cd(0x2b3)]!=='S'?_0x34457e[_0x5930cd(0x25a)]?.[_0x5930cd(0x2a4)]:0x0)??0x0,_0x50de26=(_0x34457e[_0x5930cd(0x2fa)]?.[_0x5930cd(0x2ca)][_0x5930cd(0x2b3)]!=='S'?_0x34457e[_0x5930cd(0x2fa)]?.['thk']:0x0)??0x0,_0x49644e=(_0x34457e[_0x5930cd(0x3ad)]?.[_0x5930cd(0x2ca)][_0x5930cd(0x2b3)]!=='S'?_0x34457e[_0x5930cd(0x3ad)]?.[_0x5930cd(0x2a4)]:0x0)??0x0,_0x516d44=_0x289670[_0x5930cd(0x3be)]-_0x50de26-_0x49644e,_0x4214dc=_0x289670[_0x5930cd(0x390)]-_0x4779e1-_0x47f12f,_0x271f69=_0x437a90[_0x5930cd(0x2fe)],_0x486f9d=_0x50de26/0x2-_0x49644e/0x2,_0x229af4=-(_0x4779e1/0x2-_0x47f12f/0x2),_0x28b160=-(_0x289670[_0x5930cd(0x25f)]/0x2-_0x271f69/0x2);return _0x3471ac===N[_0x5930cd(0x351)]?c[_0x5930cd(0x345)](_0x5930cd(0x2ab),{'position':[_0x486f9d/E,_0x229af4/E,_0x28b160/E],'rotation':[0x0,0x0,0x0],'children':c[_0x5930cd(0x345)](G,{'length':_0x516d44,'width':_0x4214dc,'thk':_0x271f69,'opacity':0.8,'treeId':_0x5cf929,'isSelected':_0x5388bf,'isHovered':_0x91d306,'onClick':_0x5a49e2,'onPointerEnter':_0x2f7f13,'onPointerLeave':_0x7016ab})}):c[_0x5930cd(0x345)]('g',{'transform':_0x5930cd(0x396)+_0x486f9d+','+(_0x3471ac===N['_2D_TOP']?_0x229af4:_0x28b160)+')','children':c[_0x5930cd(0x345)](B,{'dim_x':_0x516d44,'dim_y':_0x3471ac===N[_0x5930cd(0x2df)]?_0x4214dc:_0x271f69,'text':_0x5930cd(0x2cc)+_0x516d44+'\x20x\x20'+_0x4214dc+_0x5930cd(0x322)+_0x271f69,'treeId':_0x5cf929,'isSelected':_0x5388bf,'isHovered':_0x91d306,'onClick':_0x5a49e2,'onMouseEnter':_0x2f7f13,'onMouseLeave':_0x7016ab})});}function Ge(){const _0x19bdd1=a0_0x235465,_0x5bd9c0=M[_0x19bdd1(0x35a)](xe);if(!_0x5bd9c0)throw new Error(_0x19bdd1(0x280));return _0x5bd9c0;}function Be(_0xa4af09,_0x4d2974,_0x19f19b,_0x493ef0={}){const _0x5dd7b0=a0_0x235465,{throwOnError:_0x181ce2=!0x1}=_0x493ef0;if(!_0xa4af09[_0x5dd7b0(0x218)](_0x4d2974))throw new Error('Descriptor\x20'+_0x4d2974+_0x5dd7b0(0x29b));return M[_0x5dd7b0(0x1f6)](()=>{const _0x5d7ea7=_0x5dd7b0;try{return{'result':_0xa4af09[_0x5d7ea7(0x228)](_0x4d2974,_0x19f19b),'error':null,'success':!0x0};}catch(_0xf018bc){const _0x3b741e=_0xf018bc instanceof Error?_0xf018bc['message']:_0x5d7ea7(0x34d);if(_0x181ce2)throw _0xf018bc;return{'result':null,'error':_0x3b741e,'success':!0x1};}},[_0xa4af09,_0x4d2974,_0x19f19b,_0x181ce2]);}function Pt(_0x277771,_0x2374a1,_0x25051c){return M['useMemo'](()=>{const _0x5dcb96=a0_0x5bf0;try{const _0x3b0af9=_0x277771[_0x5dcb96(0x323)](_0x2374a1,_0x25051c);return{'matches':_0x3b0af9,'error':null,'count':_0x3b0af9[_0x5dcb96(0x2e1)]};}catch(_0x4a56e7){const _0x53b25e=_0x4a56e7 instanceof Error?_0x4a56e7['message']:_0x5dcb96(0x34d);return{'matches':[],'error':_0x53b25e,'count':0x0};}},[_0x277771,_0x2374a1,_0x25051c]);}const R={'LINEAR_DIVISION':a0_0x235465(0x2d7),'ARTICLE':a0_0x235465(0x302)},F={'STRING':a0_0x235465(0x285),'DESCRIPTOR':a0_0x235465(0x36f)},_e={'linearDivision':_0xc5ed29=>_0xc5ed29['type']===R[a0_0x235465(0x392)],'article':_0x21ba70=>_0x21ba70['type']===R[a0_0x235465(0x1f2)]},Rt={'string':_0x37657d=>_0x37657d['type']===R[a0_0x235465(0x392)]&&_0x37657d[a0_0x235465(0x38b)]===F[a0_0x235465(0x263)],'descriptor':_0x3ab29e=>_0x3ab29e['type']===R['LINEAR_DIVISION']&&_0x3ab29e['valueSource']===F[a0_0x235465(0x3ae)]},ne={'string':_0x1ca6d9=>_0x1ca6d9['type']===R[a0_0x235465(0x1f2)]&&_0x1ca6d9['valueSource']===F[a0_0x235465(0x263)],'descriptor':_0x85d8d0=>_0x85d8d0[a0_0x235465(0x275)]===R['ARTICLE']&&_0x85d8d0[a0_0x235465(0x38b)]===F['DESCRIPTOR']},J={'linearDivisionString'(_0x25df8d,_0xea55fd,_0xfa3f49,_0x35ba39,_0x532971,_0x3a20e5,_0x6c9fee,_0x63e6d8){const _0x40c424=a0_0x235465;return{'TREEID':_0x25df8d,'type':R['LINEAR_DIVISION'],'valueSource':F[_0x40c424(0x263)],'DIVDIR':_0xea55fd,'DIVTYPE':_0xfa3f49,'HORDEFTYPE':_0x35ba39,'LINDIV1':_0x532971,'DIVELEM1':_0x3a20e5,'DIVIDER':'','formula':_0x6c9fee,'thickness':_0x63e6d8};},'linearDivisionDescriptor'(_0x128158,_0x3a34cb,_0x236795,_0x54c335,_0xd55e5e,_0x44f26b,_0x59595d,_0x58652e){const _0x46a4b9=a0_0x235465;return{'TREEID':_0x128158,'type':R[_0x46a4b9(0x392)],'valueSource':F['DESCRIPTOR'],'DIVDIR':_0x3a34cb,'DIVTYPE':_0x236795,'HORDEFTYPE':_0x54c335,'LINDIV1':_0xd55e5e,'DIVELEM1':_0x44f26b,'DIVIDER':'','descriptorName':_0x59595d,'thickness':_0x58652e};},'articleString'(_0x2c3baa,_0x46d4aa,_0x309baa,_0x282d9d,_0xb49695,_0xf6e7f,_0xbdcc97){const _0x3ee7c2=a0_0x235465;return{'TREEID':_0x2c3baa,'type':R[_0x3ee7c2(0x1f2)],'valueSource':F[_0x3ee7c2(0x263)],'DIVDIR':_0x46d4aa,'DIVTYPE':_0x309baa,'HORDEFTYPE':_0x282d9d,'LINDIV1':_0xb49695,'DIVELEM1':_0xf6e7f,'DIVIDER':_0xbdcc97,'articleName':_0xbdcc97};},'articleDescriptor'(_0x17b86b,_0x550586,_0x5ebb0c,_0x18ef73,_0x3d1f59,_0x49caea,_0x3119e3){const _0xf285c3=a0_0x235465;return{'TREEID':_0x17b86b,'type':R['ARTICLE'],'valueSource':F[_0xf285c3(0x3ae)],'DIVDIR':_0x550586,'DIVTYPE':_0x5ebb0c,'HORDEFTYPE':_0x18ef73,'LINDIV1':_0x3d1f59,'DIVELEM1':_0x49caea,'DIVIDER':_0x3119e3,'descriptorName':_0x3119e3};},'fromZoneData'(_0x4f3be9,_0x21a85d){const _0x3ded67=a0_0x235465,_0x597cae=_0x14e939=>_0x14e939[_0x3ded67(0x2ca)]()['startsWith']('#');if(_0x4f3be9[_0x3ded67(0x32b)]==='A'){if(_0x597cae(_0x4f3be9[_0x3ded67(0x286)])){const _0x236773=_0x4f3be9[_0x3ded67(0x286)]['replace']('#','')[_0x3ded67(0x2ca)]();return J[_0x3ded67(0x32e)](_0x4f3be9['TREEID'],_0x4f3be9['DIVDIR'],_0x4f3be9['DIVTYPE'],_0x4f3be9['HORDEFTYPE'],_0x4f3be9[_0x3ded67(0x249)],_0x4f3be9[_0x3ded67(0x2bf)],_0x236773);}return J['articleString'](_0x4f3be9[_0x3ded67(0x200)],_0x4f3be9[_0x3ded67(0x32b)],_0x4f3be9[_0x3ded67(0x242)],_0x4f3be9[_0x3ded67(0x34c)],_0x4f3be9[_0x3ded67(0x249)],_0x4f3be9[_0x3ded67(0x2bf)],_0x4f3be9[_0x3ded67(0x286)]);}if(_0x597cae(_0x4f3be9[_0x3ded67(0x249)])){const _0x256b3f=_0x4f3be9['LINDIV1']['replace']('#','')[_0x3ded67(0x2ca)]();return J[_0x3ded67(0x208)](_0x4f3be9['TREEID'],_0x4f3be9[_0x3ded67(0x32b)],_0x4f3be9[_0x3ded67(0x242)],_0x4f3be9[_0x3ded67(0x34c)],_0x4f3be9[_0x3ded67(0x249)],_0x4f3be9[_0x3ded67(0x2bf)],_0x256b3f,_0x21a85d);}return J[_0x3ded67(0x38f)](_0x4f3be9[_0x3ded67(0x200)],_0x4f3be9[_0x3ded67(0x32b)],_0x4f3be9[_0x3ded67(0x242)],_0x4f3be9[_0x3ded67(0x34c)],_0x4f3be9[_0x3ded67(0x249)],_0x4f3be9[_0x3ded67(0x2bf)],_0x4f3be9['LINDIV1'],_0x21a85d);}};function Vt(_0x215a17){const _0x9175c5=a0_0x235465;if(!_0x215a17)return _0x9175c5(0x3be);const _0x2b4dc4={0x0:_0x9175c5(0x3be),0x1:'depth',0x2:_0x9175c5(0x3be),0x3:_0x9175c5(0x390)};return _0x215a17[_0x9175c5(0x32b)]==='V'?_0x9175c5(0x25f):_0x215a17['HORDEFTYPE']==='W'?_0x9175c5(0x3be):_0x215a17[_0x9175c5(0x34c)]==='D'?_0x9175c5(0x390):_0x215a17[_0x9175c5(0x34c)]==='P'?_0x2b4dc4[_0x215a17[_0x9175c5(0x2bf)]]??_0x9175c5(0x3be):'width';}function jt(_0x411e9c,_0x2bafae){return _0x2bafae?_0x2bafae[_0x411e9c]:0x0;}function Ft(_0x1b9c87,_0x286067){const _0x1f6ccf=a0_0x235465,_0x1be4ac=_0x1b9c87;if(Gt(_0x1b9c87))return{'value':_0x1b9c87['startsWith']('#')?_0x1b9c87['slice'](0x1):_0x1b9c87,'original':_0x1be4ac,'isReference':!0x0};if(/^\d+:\d+$/[_0x1f6ccf(0x1f8)](_0x1b9c87))return{'value':_0x1b9c87,'original':_0x1be4ac,'isReference':!0x1};const {format:_0xefedfd,expression:_0x2e435f,suffix:_0xde99ba}=zt(_0x1b9c87);let _0x4efb74=_0x2e435f;_0x4efb74=_0x4efb74['replace'](/^\((.+)\)$/,'$1');const _0x2b0d1a=we(_0x4efb74,{'variableTree':_0x286067,'allowFunctions':!0x0,'dataType':'FL','silent':!0x0})['value']??_0x2e435f;let _0xe1592b;switch(_0xefedfd){case'expr:ratio':_0xe1592b=''+_0x2b0d1a+_0xde99ba;break;case'ratio:expr':_0xe1592b=''+_0xde99ba+_0x2b0d1a;break;case _0x1f6ccf(0x216):_0xe1592b=''+_0x2b0d1a+_0xde99ba;break;case _0x1f6ccf(0x28c):_0xe1592b=String(_0x2b0d1a);break;}return{'value':_0xe1592b,'original':_0x1be4ac,'isReference':!0x1};}function $t(_0x4fee3d,_0x4621db){return Ft(_0x4fee3d,_0x4621db)['value'];}function zt(_0x30180d){const _0x1b02ff=a0_0x235465,_0x2cf761=_0x30180d[_0x1b02ff(0x2ca)]()['replace'](/^\((.+)\)$/,'$1'),_0x4265c7=_0x2cf761[_0x1b02ff(0x287)](/^(\d+|n):(.+?)(mm|cm)?$/);if(_0x4265c7){const [,_0x568aff,_0x54d67d,_0x580dc3]=_0x4265c7;return{'format':'ratio:expr','expression':_0x54d67d[_0x1b02ff(0x2ca)](),'suffix':_0x580dc3?_0x568aff+':'+_0x580dc3:_0x568aff+':'};}const _0x425772=_0x2cf761[_0x1b02ff(0x287)](/^(.+?)(mm|cm)?:(\d+)$/);if(_0x425772){const [,_0x532567,_0xd21e7c,_0x1526fe]=_0x425772;return{'format':'expr:ratio','expression':_0x532567[_0x1b02ff(0x2ca)](),'suffix':_0xd21e7c?_0xd21e7c+':'+_0x1526fe:':'+_0x1526fe};}const _0x5962c7=_0x2cf761[_0x1b02ff(0x287)](/^(.+?)(\*)?{(\d+)}$/);if(_0x5962c7){const [,_0x2f4124,_0x523691,_0x39cb71]=_0x5962c7;return{'format':_0x1b02ff(0x216),'expression':_0x2f4124['trim'](),'suffix':_0x523691?'*{'+_0x39cb71+'}':'{'+_0x39cb71+'}'};}return{'format':_0x1b02ff(0x28c),'expression':_0x2cf761,'suffix':''};}function Gt(_0x59b4e9){const _0x21b470=a0_0x235465;return _0x59b4e9[_0x21b470(0x395)]('#')?!0x0:_0x59b4e9['includes']('(')||/[+\-*/]/[_0x21b470(0x1f8)](_0x59b4e9)?!0x1:/^[A-Za-z0-9_-]+$/[_0x21b470(0x1f8)](_0x59b4e9)?!0x0:!/^\d+:\d+$/['test'](_0x59b4e9);}function He({divider:_0x2de772,inputData:_0x370854}){const _0x3241be=a0_0x235465,_0x182519=Ge(),{resolveString:_0x4a15af}=z(),{result:_0x44179d,error:_0x566fb7}=Be(_0x182519,_0x2de772[_0x3241be(0x376)],_0x370854,{'throwOnError':!0x1}),_0x3fa37c=M[_0x3241be(0x1f6)](()=>_0x2de772?ne['string'](_0x2de772)?_0x2de772['articleName']:ne[_0x3241be(0x36f)](_0x2de772)&&_0x44179d?.[_0x3241be(0x3a2)]?_0x44179d[_0x3241be(0x3a2)]:'':'',[_0x2de772,_0x44179d]);return{'updatedDivider':M[_0x3241be(0x1f6)](()=>{const _0x264bb7=_0x3241be;if(_0x2de772)return _0x44179d?.[_0x264bb7(0x3a2)]!=null?{..._0x2de772,'LINDIV1':$t(_0x4a15af(_0x44179d[_0x264bb7(0x3a2)])),'articleName':_0x3fa37c}:{..._0x2de772,'LINDIV1':_0x4a15af(_0x2de772[_0x264bb7(0x249)])};},[_0x2de772,_0x44179d,_0x3fa37c,_0x4a15af])};}const Bt={'width':{'rotation':[0x0,Math['PI']/0x2,0x0],'get3D':(_0x1f3380,_0x441c5b)=>({'length':_0x1f3380[a0_0x235465(0x25f)],'width':_0x1f3380[a0_0x235465(0x390)],'thk':_0x441c5b}),'get2DTop':(_0x4e451b,_0x117ed3)=>({'dim_x':_0x4e451b[a0_0x235465(0x390)],'dim_y':_0x117ed3,'rotate':0x5a}),'get2DFront':(_0x10e24e,_0x1d045b)=>({'dim_x':_0x10e24e[a0_0x235465(0x25f)],'dim_y':_0x1d045b,'rotate':0x5a})},'height':{'rotation':[0x0,0x0,0x0],'get3D':(_0x8c65d,_0x46c87a)=>({'length':_0x8c65d[a0_0x235465(0x3be)],'width':_0x8c65d[a0_0x235465(0x390)],'thk':_0x46c87a}),'get2DTop':_0x31d0f9=>({'dim_x':_0x31d0f9['width'],'dim_y':_0x31d0f9[a0_0x235465(0x390)]}),'get2DFront':(_0x19e2f5,_0x5a80ee)=>({'dim_x':_0x19e2f5[a0_0x235465(0x3be)],'dim_y':_0x5a80ee})},'depth':{'rotation':[Math['PI']/0x2,0x0,Math['PI']/0x2],'get3D':(_0x5a9187,_0x8fc26d)=>({'length':_0x5a9187[a0_0x235465(0x25f)],'width':_0x5a9187[a0_0x235465(0x3be)],'thk':_0x8fc26d}),'get2DTop':(_0x1a0f69,_0x5be1af)=>({'dim_x':_0x1a0f69['width'],'dim_y':_0x5be1af}),'get2DFront':_0xfb186a=>({'dim_x':_0xfb186a[a0_0x235465(0x3be)],'dim_y':_0xfb186a[a0_0x235465(0x25f)]})},'article':{'rotation':[0x0,0x0,0x0],'get3D':(_0x11c415,_0xda36a4)=>({'length':_0x11c415['width'],'width':_0x11c415[a0_0x235465(0x390)],'thk':_0xda36a4}),'get2DTop':_0x226467=>({'dim_x':_0x226467[a0_0x235465(0x3be)],'dim_y':_0x226467[a0_0x235465(0x390)]}),'get2DFront':(_0x3da10d,_0x431bdc)=>({'dim_x':_0x3da10d[a0_0x235465(0x3be)],'dim_y':_0x431bdc})},'independent':{'rotation':[0x0,0x0,0x0],'get3D':(_0x1cb622,_0x33fc0d)=>({'length':_0x1cb622['width'],'width':_0x1cb622[a0_0x235465(0x390)],'thk':_0x33fc0d}),'get2DTop':_0xc04e27=>({'dim_x':_0xc04e27[a0_0x235465(0x3be)],'dim_y':_0xc04e27[a0_0x235465(0x390)]}),'get2DFront':(_0x992956,_0x2946cb)=>({'dim_x':_0x992956['width'],'dim_y':_0x2946cb})}},Ht=(_0x510055,_0x3b7b99,_0x5d77f6)=>({'x':_0x510055===a0_0x235465(0x3be)?_0x5d77f6[a0_0x235465(0x3be)]/0x2+_0x3b7b99/0x2:0x0,'y':_0x510055===a0_0x235465(0x390)?_0x5d77f6[a0_0x235465(0x390)]/0x2+_0x3b7b99/0x2:0x0,'z':_0x510055==='height'?_0x5d77f6[a0_0x235465(0x25f)]/0x2+_0x3b7b99/0x2:0x0});function Ut({divider:_0x3e1aad,view:_0x5ab1e0,childrenPositon:_0x4d17f1,dividerThk:_0x1a3c51}){const _0x3befd5=a0_0x235465,_0x5d14fc=M['useContext'](O),_0x423967=_0x4d17f1[_0x3befd5(0x30b)],_0x58856a=_0x4d17f1[_0x3befd5(0x39c)],_0x4e8397=Bt[_0x423967];if(!_0x5d14fc)return null;const {selectedElem:_0xe66f68,setSelectedElem:_0x367008,hoveredElem:_0x39c80b,setHoveredElem:_0x587aad}=_0x5d14fc;return _0x58856a[_0x3befd5(0x2b4)]((_0x493303,_0x4282ed)=>{const _0x257d69=_0x3befd5,_0x4f306c=!(_0x4282ed===_0x58856a[_0x257d69(0x2e1)]-0x1)&&_0x1a3c51!==0x0,_0x234097=Ht(_0x423967,_0x1a3c51,_0x493303['zone_dims']),_0x2f2c99=_0x4e8397[_0x257d69(0x2c6)](_0x493303[_0x257d69(0x27d)],_0x1a3c51),_0x2b2832=_0x5ab1e0===N[_0x257d69(0x2df)]?_0x4e8397[_0x257d69(0x23e)](_0x493303['zone_dims'],_0x1a3c51):_0x4e8397[_0x257d69(0x365)](_0x493303[_0x257d69(0x27d)],_0x1a3c51),_0x4e1fc5=_0x3e1aad[_0x257d69(0x200)]+_0x257d69(0x372),_0x40679e=_0xe66f68===_0x4e1fc5,_0xab60c5=_0x39c80b===_0x4e1fc5;return c[_0x257d69(0x345)](M[_0x257d69(0x28b)],{'children':c[_0x257d69(0x36e)](Q,{'view':_0x5ab1e0,'position':[_0x493303['x']/E,_0x493303['y']/E,_0x493303['z']/E],'children':[c[_0x257d69(0x345)](Q,{'view':_0x5ab1e0,'position':[_0x234097['x']/E,_0x234097['y']/E,_0x234097['z']/E],'rotation':_0x4e8397[_0x257d69(0x1f5)],'children':_0x4f306c&&c[_0x257d69(0x36e)](c['Fragment'],{'children':[c[_0x257d69(0x345)](_0x257d69(0x2ab),{'children':c[_0x257d69(0x36e)](_0x257d69(0x22c),{'children':[c[_0x257d69(0x345)](_0x257d69(0x23f),{'args':[_0x2f2c99['length'],_0x2f2c99[_0x257d69(0x3be)],_0x2f2c99['thk']]}),c['jsx']('meshStandardMaterial',{'color':_0x257d69(0x2fd),'transparent':!0x0,'opacity':0.3})]})}),_0x5ab1e0===N[_0x257d69(0x351)]?c['jsx'](G,{..._0x2f2c99,'opacity':0x1,'treeId':_0x4e1fc5,'isSelected':_0x40679e,'isHovered':_0xab60c5,'onClick':()=>_0x367008(_0x40679e?null:_0x4e1fc5),'onPointerEnter':()=>_0x587aad(_0x4e1fc5),'onPointerLeave':()=>_0x587aad(null)}):c[_0x257d69(0x345)](B,{..._0x2b2832,'text':_0x4e1fc5,'treeId':_0x4e1fc5,'isSelected':_0x40679e,'isHovered':_0xab60c5,'onClick':()=>_0x367008(_0x40679e?null:_0x4e1fc5),'onMouseEnter':()=>_0x587aad(_0x4e1fc5),'onMouseLeave':()=>_0x587aad(null)})]})}),c[_0x257d69(0x345)](Te,{'TREEID':_0x493303['TREEID'],'dimension':_0x493303[_0x257d69(0x27d)],'view':_0x5ab1e0})]})},_0x4282ed);});}function Zt({view:_0x512265,remainingZone:_0x595a92,articleName:_0x23aa28}){const _0x4d6ddf=a0_0x235465;return c['jsx'](me,{'articleName':_0x23aa28,'dimensionOverrides':{'width':_0x595a92[_0x4d6ddf(0x274)][_0x4d6ddf(0x3be)],'height':_0x595a92[_0x4d6ddf(0x274)][_0x4d6ddf(0x25f)],'depth':_0x595a92[_0x4d6ddf(0x274)]['depth']},'children':c[_0x4d6ddf(0x345)](Q,{'view':_0x512265,'position':[_0x595a92[_0x4d6ddf(0x298)]['x']/E,_0x595a92[_0x4d6ddf(0x298)]['y']/E,_0x595a92[_0x4d6ddf(0x298)]['z']/E],'children':c[_0x4d6ddf(0x345)](Ne,{'view':_0x512265})})});}function Kt({childrenPositon:_0x307b1d,dividerThk:_0x610f26,divider:_0x3f9e51,view:_0x29500a,remainingZone:_0x30e432}){const _0xdc32b8=a0_0x235465;if(_e[_0xdc32b8(0x262)](_0x3f9e51))return _0x307b1d?c[_0xdc32b8(0x345)](Ut,{'view':_0x29500a,'childrenPositon':_0x307b1d,'dividerThk':_0x610f26,'divider':_0x3f9e51,'remainingZone':_0x30e432}):null;if(_e[_0xdc32b8(0x302)](_0x3f9e51)){const _0x27f903=ne['string'](_0x3f9e51)?_0x3f9e51['articleName']:_0x3f9e51[_0xdc32b8(0x249)];return!_0x30e432||_0x27f903===''?null:c[_0xdc32b8(0x345)](Zt,{'view':_0x29500a,'articleName':_0x27f903,'remainingZone':_0x30e432});}return null;}function Ue(){const _0x33d0be=a0_0x235465,{getArticleData:_0x3f8073}=W(),{articleName:_0x4fc125,dimensionOverrides:_0x11cfa4}=X(),{resolveString:_0x4d681f}=z(),{anglPrims:_0x54ebfa}=_0x3f8073(_0x4fc125);if(_0x54ebfa[_0x33d0be(0x2e1)]===0x0)throw new Error(_0x33d0be(0x30e)+_0x4fc125);const _0x4031a2=_0x54ebfa[0x0],_0x352939=(_0xc3cbd6,_0x14e5ca)=>{const _0x340412=_0x33d0be,_0x2b98b5=typeof _0xc3cbd6==_0x340412(0x285)&&_0xc3cbd6!==''?ie(_0x4d681f(_0xc3cbd6)):_0x14e5ca;return parseFloat(String(_0x2b98b5))||0x0;},_0xf4cdf7={'width':_0x11cfa4?.[_0x33d0be(0x3be)]??_0x352939(_0x4031a2[_0x33d0be(0x273)],_0x4031a2[_0x33d0be(0x38e)]),'height':_0x11cfa4?.['height']??_0x352939(_0x4031a2[_0x33d0be(0x33b)],_0x4031a2[_0x33d0be(0x28a)]),'depth':_0x11cfa4?.[_0x33d0be(0x390)]??_0x352939(_0x4031a2['DIMCALCFY'],_0x4031a2[_0x33d0be(0x213)])};return{'current_prim':_0x4031a2,'prim_dims':_0xf4cdf7};}function Te({TREEID:_0x5ac82c,dimension:_0x16d988,view:_0x4bf9ca=N[a0_0x235465(0x351)]}){const _0x5d2b75=a0_0x235465;console[_0x5d2b75(0x212)]('=====================================\x20Zone\x20Start\x20'+_0x5ac82c+_0x5d2b75(0x3b5));const _0xb70940=oe(_0x5ac82c),_0x7e7a54=_0xb70940?.[_0x5d2b75(0x295)](),_0x16fbfb=_0xb70940?.['dividerThk']||0x0,_0x1fd890=Ue(),_0x5d8d4f=Nt(_0x5ac82c),_0x2bf52e=Mt(_0x5d8d4f,_0xb70940?.[_0x5d2b75(0x229)]||0x0,_0xb70940?.[_0x5d2b75(0x2fe)]||0x0),_0x43737a=yt(_0x5d8d4f),_0x55d158=It(_0x16d988,_0x43737a),_0x244778=bt(_0x55d158,_0x2bf52e),_0x5922df=M['useMemo'](()=>{const _0x4a3e38=_0x5d2b75;if(_0xb70940)return J[_0x4a3e38(0x279)](_0xb70940[_0x4a3e38(0x23c)],_0x16fbfb);},[_0xb70940,_0x16fbfb]),_0xd7a3f=_0x7e7a54?Object[_0x5d2b75(0x203)](_0x7e7a54):{},_0x36cfe7=Vt(_0x5922df),_0x315099=jt(_0x36cfe7,_0x244778['dimensions']);_0xd7a3f[_0x5d2b75(0x2c7)]=_0x1fd890?.[_0x5d2b75(0x26f)][_0x5d2b75(0x3be)][_0x5d2b75(0x257)](),_0xd7a3f['AD\x20article\x20height']=_0x1fd890?.[_0x5d2b75(0x26f)]['height'][_0x5d2b75(0x257)](),_0xd7a3f['AD\x20article\x20depth']=_0x1fd890?.[_0x5d2b75(0x26f)][_0x5d2b75(0x390)]['toString'](),_0xd7a3f[0x0]='0',_0xd7a3f['X']=_0x315099[_0x5d2b75(0x257)]();const _0x5ce42e=_0x5922df?Rt['descriptor'](_0x5922df):!0x1,_0x40fe95=_0x5922df?ne[_0x5d2b75(0x36f)](_0x5922df):!0x1,_0x48a225=_0x5ce42e||_0x40fe95?He({'divider':_0x5922df,'inputData':_0xd7a3f})[_0x5d2b75(0x334)]:_0x5922df,_0x1e59e5=Dt(_0x244778,_0x16fbfb,_0x48a225,_0xb70940?.[_0x5d2b75(0x31d)][_0x5d2b75(0x2b4)](_0x3acbe9=>_0x3acbe9[_0x5d2b75(0x200)])||[]);return c[_0x5d2b75(0x345)](c[_0x5d2b75(0x28b)],{'children':c[_0x5d2b75(0x36e)](Q,{'view':_0x4bf9ca,'position':[_0x55d158['position']['x']/E,_0x55d158['position']['y']/E,_0x55d158['position']['z']/E],'children':[_0x5d8d4f[_0x5d2b75(0x294)]?.[_0x5d2b75(0x3b7)]&&c[_0x5d2b75(0x345)](kt,{'view':_0x4bf9ca,'TREEID':Re(_0x5ac82c),'dimension':_0x55d158[_0x5d2b75(0x274)],'helper':_0x5d8d4f}),_0x5d8d4f['left']?.['CPNAME']&&c[_0x5d2b75(0x345)](At,{'view':_0x4bf9ca,'TREEID':Fe(_0x5ac82c),'dimension':_0x55d158[_0x5d2b75(0x274)],'helper':_0x5d8d4f}),_0x5d8d4f['back']?.[_0x5d2b75(0x3b7)]&&c[_0x5d2b75(0x345)](Ct,{'view':_0x4bf9ca,'TREEID':je(_0x5ac82c),'dimension':_0x55d158['dimensions'],'helper':_0x5d8d4f}),_0x5d8d4f[_0x5d2b75(0x3ad)]?.[_0x5d2b75(0x3b7)]&&c['jsx'](wt,{'view':_0x4bf9ca,'TREEID':Ve(_0x5ac82c),'dimension':_0x55d158[_0x5d2b75(0x274)],'helper':_0x5d8d4f}),_0xb70940?.[_0x5d2b75(0x2e6)]&&c[_0x5d2b75(0x345)](Lt,{'view':_0x4bf9ca,'TREEID':_0x5ac82c,'dimension':_0x55d158[_0x5d2b75(0x274)],'helper':_0x5d8d4f}),_0xb70940?.[_0x5d2b75(0x21e)]&&c[_0x5d2b75(0x345)](Ot,{'view':_0x4bf9ca,'TREEID':_0x5ac82c,'dimension':_0x55d158[_0x5d2b75(0x274)],'helper':_0x5d8d4f}),c[_0x5d2b75(0x345)](Q,{'view':_0x4bf9ca,'position':[_0x244778['position']['x']/E,_0x244778[_0x5d2b75(0x298)]['y']/E,_0x244778[_0x5d2b75(0x298)]['z']/E],'children':_0x48a225&&c[_0x5d2b75(0x345)](Kt,{'remainingZone':_0x244778,'divider':_0x48a225,'view':_0x4bf9ca,'childrenPositon':_0x1e59e5,'dividerThk':_0x16fbfb})})]})});}const Yt='scale(1,-1)';function Ne({view:_0x481e26=N[a0_0x235465(0x351)]}){const _0x4fe76a=a0_0x235465;console[_0x4fe76a(0x212)](_0x4fe76a(0x329));const _0x4828f2=Ue()['prim_dims'],_0x409b51=c[_0x4fe76a(0x345)](Te,{'TREEID':'0','view':_0x481e26,'dimension':_0x4828f2});return _0x481e26===N[_0x4fe76a(0x351)]?_0x409b51:c['jsx']('g',{'transform':Yt,'children':_0x409b51});}function Wt({view:_0x4b24cb,data:_0x56cf88,articleName:_0x4a657d}){const _0x3f30d1=a0_0x235465,_0x8d5ff1=_0x56cf88[_0x3f30d1(0x251)],_0x56d3a2=_0x56cf88[_0x3f30d1(0x24c)],_0x3f56da=_0x56cf88[_0x3f30d1(0x2e9)]['map'](_0x1ac7e3=>_0x1ac7e3[_0x3f30d1(0x266)]);return c[_0x3f30d1(0x345)](c[_0x3f30d1(0x28b)],{'children':c[_0x3f30d1(0x345)](ke,{'names':_0x3f56da,'data':_0x56cf88,'children':c[_0x3f30d1(0x345)](me,{'articleName':_0x4a657d,'children':c[_0x3f30d1(0x345)](Ce,{'imosVariables':_0x56d3a2,'children':c['jsx'](Pe,{'descriptorData':_0x8d5ff1,'children':c['jsx'](Ne,{'view':_0x4b24cb})})})})})});}function Xt(){const _0x1327c4=a0_0x235465,{tree:_0x3fae64,getValue:_0x588af3,setValue:_0x35f5d6}=z(),_0x5e193b=(_0x3811f3,_0x26a38d)=>{const _0x36e451=Number(_0x26a38d);_0x35f5d6(_0x3811f3,isNaN(_0x36e451)?_0x26a38d:_0x36e451);},_0x441d3c=((()=>{const _0x47fc27=a0_0x5bf0,_0x2eae6e={[L[_0x47fc27(0x1f7)]]:{'type':L[_0x47fc27(0x1f7)],'label':_0x47fc27(0x28d),'variables':[]},[L[_0x47fc27(0x321)]]:{'type':L[_0x47fc27(0x321)],'label':_0x47fc27(0x374),'variables':[]},[L[_0x47fc27(0x33a)]]:{'type':L[_0x47fc27(0x33a)],'label':_0x47fc27(0x378),'variables':[]},[L[_0x47fc27(0x27e)]]:{'type':L['Text'],'label':_0x47fc27(0x27e),'variables':[]}};return Array['from'](_0x3fae64[_0x47fc27(0x235)]())[_0x47fc27(0x2e2)](([_0x4e3cbb,_0x5131ee])=>{const _0x5348f0=_0x47fc27,_0x53ffa5=_0x588af3(_0x4e3cbb),_0xbc2039=_0x5131ee['WERT'][_0x5348f0(0x395)]('$');_0x2eae6e[_0x5131ee['TYP']]?.['variables'][_0x5348f0(0x2d1)]({'name':_0x4e3cbb,'value':_0x53ffa5??_0x5348f0(0x391),'reference':_0xbc2039?_0x5131ee[_0x5348f0(0x387)]:void 0x0,'rawType':_0x5131ee[_0x5348f0(0x2d6)]});}),Object['values'](_0x2eae6e)[_0x47fc27(0x30a)](_0x397111=>_0x397111[_0x47fc27(0x24c)][_0x47fc27(0x2e1)]>0x0);})()),_0x277177=_0x382def=>{const _0x5cc141=a0_0x5bf0,_0x28253d=_0x382def[_0x5cc141(0x1f9)]===L[_0x5cc141(0x1f7)],_0x181014=typeof _0x382def['value']=='number'?_0x382def[_0x5cc141(0x26a)]:Number(_0x382def[_0x5cc141(0x26a)]);return _0x28253d&&!isNaN(_0x181014)?c[_0x5cc141(0x36e)]('div',{'className':_0x5cc141(0x292),'children':[c[_0x5cc141(0x345)]('input',{'type':'range','min':0x0,'max':0x4e20,'value':_0x181014,'onChange':_0x1029f6=>_0x5e193b(_0x382def[_0x5cc141(0x261)],_0x1029f6['target'][_0x5cc141(0x26a)]),'className':_0x5cc141(0x26c)}),c[_0x5cc141(0x345)]('input',{'type':_0x5cc141(0x1fc),'value':_0x181014,'onChange':_0x1c4793=>_0x5e193b(_0x382def[_0x5cc141(0x261)],_0x1c4793[_0x5cc141(0x31e)][_0x5cc141(0x26a)]),'onBlur':_0x2af4f9=>_0x5e193b(_0x382def[_0x5cc141(0x261)],_0x2af4f9[_0x5cc141(0x31e)][_0x5cc141(0x26a)]),'className':_0x5cc141(0x340),'min':0x0,'max':0x4e20})]}):c[_0x5cc141(0x345)](_0x5cc141(0x226),{'type':_0x5cc141(0x2c4),'value':_0x382def[_0x5cc141(0x26a)],'onChange':_0x3a0e20=>_0x5e193b(_0x382def[_0x5cc141(0x261)],_0x3a0e20[_0x5cc141(0x31e)]['value']),'onBlur':_0x240d5a=>_0x5e193b(_0x382def[_0x5cc141(0x261)],_0x240d5a[_0x5cc141(0x31e)][_0x5cc141(0x26a)]),'className':'var-controller__text-input'});};return c['jsxs'](_0x1327c4(0x272),{'className':_0x1327c4(0x359),'children':[c[_0x1327c4(0x345)]('h2',{'children':_0x1327c4(0x206)}),c[_0x1327c4(0x36e)]('p',{'className':'var-controller__header','children':[_0x1327c4(0x2d9),_0x3fae64[_0x1327c4(0x39e)]]}),_0x441d3c[_0x1327c4(0x2b4)](_0x333f2c=>c[_0x1327c4(0x36e)](_0x1327c4(0x330),{'className':_0x1327c4(0x2ad),'children':[c[_0x1327c4(0x36e)]('h3',{'className':_0x1327c4(0x380),'children':[_0x333f2c[_0x1327c4(0x38a)],'\x20(',_0x333f2c[_0x1327c4(0x24c)][_0x1327c4(0x2e1)],')']}),c['jsxs'](_0x1327c4(0x2f6),{'className':'var-controller__table','children':[c[_0x1327c4(0x345)](_0x1327c4(0x303),{'children':c[_0x1327c4(0x36e)]('tr',{'children':[c['jsx']('th',{'style':{'width':'25%'},'children':_0x1327c4(0x2c9)}),c[_0x1327c4(0x345)]('th',{'style':{'width':_0x1327c4(0x1fd)},'children':_0x1327c4(0x3a4)}),c[_0x1327c4(0x345)]('th',{'style':{'width':_0x1327c4(0x2de)},'children':'Reference'}),c['jsx']('th',{'className':_0x1327c4(0x386),'style':{'width':_0x1327c4(0x307)},'children':_0x1327c4(0x2e5)})]})}),c[_0x1327c4(0x345)](_0x1327c4(0x24d),{'children':_0x333f2c['variables']['map'](_0x57074d=>c[_0x1327c4(0x36e)]('tr',{'children':[c[_0x1327c4(0x345)]('td',{'className':_0x1327c4(0x2ee),'children':_0x57074d[_0x1327c4(0x261)]}),c[_0x1327c4(0x345)]('td',{'children':_0x277177(_0x57074d)}),c[_0x1327c4(0x345)]('td',{'className':_0x1327c4(0x2aa),'children':_0x57074d[_0x1327c4(0x350)]||'-'}),c[_0x1327c4(0x345)]('td',{'style':{'textAlign':_0x1327c4(0x386)},'children':c[_0x1327c4(0x345)]('span',{'className':'var-controller__type-badge','children':_0x333f2c[_0x1327c4(0x275)]})})]},_0x57074d[_0x1327c4(0x261)]))})]})]},_0x333f2c[_0x1327c4(0x275)])),c[_0x1327c4(0x36e)](_0x1327c4(0x330),{'className':_0x1327c4(0x2e8),'children':[c[_0x1327c4(0x345)]('h4',{'children':'Quick\x20Stats'}),c[_0x1327c4(0x345)]('ul',{'children':_0x441d3c[_0x1327c4(0x2b4)](_0xcbd577=>c[_0x1327c4(0x36e)]('li',{'children':[_0xcbd577[_0x1327c4(0x38a)],':\x20',_0xcbd577[_0x1327c4(0x24c)][_0x1327c4(0x2e1)],_0x1327c4(0x288)]},_0xcbd577[_0x1327c4(0x275)]))})]})]});}const qt=a0_0x235465(0x37d);exports['ArticleContext']=fe,exports['ArticleDesigner']=Wt,exports[a0_0x235465(0x2d8)]=me,exports[a0_0x235465(0x2c8)]=O,exports[a0_0x235465(0x276)]=ke,exports[a0_0x235465(0x3b0)]=xe,exports[a0_0x235465(0x352)]=Pe,exports[a0_0x235465(0x33d)]=Ne,exports[a0_0x235465(0x290)]=qt,exports[a0_0x235465(0x201)]=N,exports[a0_0x235465(0x22f)]=Xt,exports['VariableContext']=pe,exports['VariableProvider']=Ce,exports[a0_0x235465(0x264)]=We,exports['Zone']=Te,exports[a0_0x235465(0x291)]=He,exports[a0_0x235465(0x2a8)]=X,exports['useData']=W,exports[a0_0x235465(0x3b3)]=Be,exports[a0_0x235465(0x1fe)]=Ge,exports[a0_0x235465(0x3b1)]=Pt,exports[a0_0x235465(0x3b2)]=z;