// Author: Alberto Gonz?lez Palomo // Copyright 2023 Alberto Gonz?lez Palomo // Seliger GmbH & Co KG is hereby granted a // sublicensable, assignable, royalty free, including the rights to // create and distribute derivative works, non-exclusive license to // this program. // Saarbr?cken Germany, 2023-06-12 (function(na,ea){function R(d){return document.getElementById(d)}function P(d,b,g,l,f,e,p,v){let u=document.createElement("div");u.setAttribute("class","input-group");u.innerHTML=g;for(g=0;g";p&&q.firstChild.setAttribute("data-offset",p);u.appendChild(q)}u.appendChild(document.createTextNode(" "+v));return u}function ra(){Object.keys(ca).forEach(d=>delete ca[d])} function sa(d,b,g,l,f,e,p){const v=Array.from(arguments).join("-");if(ca.hasOwnProperty(v))return ca[v].clone();var u=14.2===d;const q=u?.7:1;var F=fa.J,L=u?null:fa.K,r=0-b,t=0+d,n=d*q,B=g*q,k=-(b*(1-q)),m=d*(1-q),A=g*q,C=-(b*(1-q)),J=d*(1-q),H=g*q,G=r+b*(1-q),E=d*q,D=g*q,I=r+b*(1-q),M=0+d,S=new THREE.BufferGeometry;const c=f;r=new Float32Array(f?[0+c,0+c,0,t-c,0+c,0,n-c,B-c,k,0+c,0+c,0,n-c,B-c,k,m+c,A-c,C,t-c,0+c,0,t,0+c,0-c,n,B-c,k-c,t-c,0+c,0,n,B-c,k-c,n-c,B-c,k,t-c,0+c,0,t-c,0,0-c,t,0+c,0-c,0+ c,0+c,0,0+c,0,0-c,t-c,0,0-c,0+c,0+c,0,t-c,0,0-c,t-c,0+c,0,n-c,B-c,k,n,B-c,k-c,n-c,B,k-c,m+c,A-c,C,n-c,B-c,k,n-c,B,k-c,m+c,A-c,C,n-c,B,k-c,m+c,A,C-c,M-c,0+c,r,0+c,0+c,r,J+c,H-c,G,M-c,0+c,r,J+c,H-c,G,E-c,D-c,I,0+c,0+c,r,0,0+c,r+c,J,H-c,G+c,0+c,0+c,r,J,H-c,G+c,J+c,H-c,G,0+c,0+c,r,0+c,0,r+c,0,0+c,r+c,M-c,0+c,r,M-c,0,r+c,0+c,0,r+c,M-c,0+c,r,0+c,0,r+c,0+c,0+c,r,J+c,H-c,G,J,H-c,G+c,J+c,H,G+c,E-c,D-c,I,J+c,H-c,G,J+c,H,G+c,E-c,D-c,I,J+c,H,G+c,E-c,D,I+c,t,0+c,0-c,M,0+c,r+c,E,D-c,I+c,t,0+c,0-c,E,D-c,I+c,n,B- c,k-c,M,0+c,r+c,M-c,0+c,r,E-c,D-c,I,M,0+c,r+c,E-c,D-c,I,E,D-c,I+c,M,0+c,r+c,M-c,0,r+c,M-c,0+c,r,t,0+c,0-c,t-c,0,0-c,M-c,0,r+c,t,0+c,0-c,M-c,0,r+c,M,0+c,r+c,E,D-c,I+c,E-c,D-c,I,E-c,D,I+c,n,B-c,k-c,E,D-c,I+c,E-c,D,I+c,n,B-c,k-c,E-c,D,I+c,n-c,B,k-c,0,0+c,r+c,0,0+c,0-c,m,A-c,C-c,0,0+c,r+c,m,A-c,C-c,J,H-c,G+c,0,0+c,0-c,0+c,0+c,0,m+c,A-c,C,0,0+c,0-c,m+c,A-c,C,m,A-c,C-c,0,0+c,0-c,0+c,0,0-c,0+c,0+c,0,0,0+c,r+c,0+c,0,r+c,0+c,0,0-c,0,0+c,r+c,0+c,0,0-c,0,0+c,0-c,m,A-c,C-c,m+c,A-c,C,m+c,A,C-c,J,H-c,G+c,m,A-c, C-c,m+c,A,C-c,J,H-c,G+c,m+c,A,C-c,J+c,H,G+c,m+c,A,C-c,n-c,B,k-c,E-c,D,I+c,m+c,A,C-c,E-c,D,I+c,J+c,H,G+c,t-c,0,0-c,0+c,0,0-c,0+c,0,r+c,t-c,0,0-c,0+c,0,r+c,M-c,0,r+c]:e&&p?[0,0,0,t,0,0,n,B,k,0,0,0,n,B,k,m,A,C,t,0,0,M,0,r,E,D,I,t,0,0,E,D,I,n,B,k,m,A,C,J,H,G,0,0,r,m,A,C,0,0,r,0,0,0,0,0,r,J,H,G,E,D,I,0,0,r,E,D,I,M,0,r]:e?[0,0,0,t,0,0,n,B,k,0,0,0,n,B,k,m,A,C,0,0,0,0,0,r,M,0,r,0,0,0,M,0,r,t,0,0,t,0,0,M,0,r,E,D,I,t,0,0,E,D,I,n,B,k,m,A,C,J,H,G,0,0,r,m,A,C,0,0,r,0,0,0,0,0,r,J,H,G,E,D,I,0,0,r,E,D,I,M,0,r]:p? [0,0,0,t,0,0,n,B,k,0,0,0,n,B,k,m,A,C,t,0,0,M,0,r,E,D,I,t,0,0,E,D,I,n,B,k,n,B,k,E,D,I,J,H,G,n,B,k,J,H,G,m,A,C,m,A,C,J,H,G,0,0,r,m,A,C,0,0,r,0,0,0,0,0,r,J,H,G,E,D,I,0,0,r,E,D,I,M,0,r]:[0,0,0,t,0,0,n,B,k,0,0,0,n,B,k,m,A,C,0,0,0,0,0,r,M,0,r,0,0,0,M,0,r,t,0,0,t,0,0,M,0,r,E,D,I,t,0,0,E,D,I,n,B,k,n,B,k,E,D,I,J,H,G,n,B,k,J,H,G,m,A,C,m,A,C,J,H,G,0,0,r,m,A,C,0,0,r,0,0,0,0,0,r,J,H,G,E,D,I,0,0,r,E,D,I,M,0,r]);C=F.N||1;A=F.O||1;t=d*C;n=g*A;B=b*C;k=f?1.4142135623730951*f*C:0;m=f?1.4142135623730951*f*A:0;C=14.2* C;A=14.2*A;u=new Float32Array(f?[k,m,t-k,m,t-k,n-m,k,m,t-k,n-m,k,n-m,0,m,k,m,k,n-m,0,m,k,n-m,0,n-m,0,m,k,0,k,m,k,m,k,0,t-k,0,k,m,t-k,0,t-k,m,0,n-m,k,n-m,k,n,k,n-m,t-k,n-m,t-k,n,k,n-m,t-k,n,k,n,k,m,t-k,m,t-k,n-m,k,m,t-k,n-m,k,n-m,0,m,k,m,k,n-m,0,m,k,n-m,0,n-m,0,m,k,0,k,m,k,m,k,0,t-k,0,k,m,t-k,0,t-k,m,0,n-m,k,n-m,k,n,k,n-m,t-k,n-m,t-k,n,k,n-m,t-k,n,k,n,k,m,B-k,m,B-k,n-m,k,m,B-k,n-m,k,n-m,0,m,k,m,k,n-m,0,m,k,n-m,0,n-m,0,m,k,0,k,m,k,m,k,0,t-k,0,k,m,t-k,0,t-k,m,0,n-m,k,n-m,k,n,k,n-m,t-k,n-m,t-k,n,k,n- m,t-k,n,k,n,k,m,B-k,m,B-k,n-m,k,m,B-k,n-m,k,n-m,0,m,k,m,k,n-m,0,m,k,n-m,0,n-m,0,m,k,0,k,m,k,m,k,0,t-k,0,k,m,t-k,0,t-k,m,0,n-m,k,n-m,k,n,k,n-m,t-k,n-m,t-k,n,k,n-m,t-k,n,k,n,k,0,t-k,0,t-k,B,k,0,t-k,B,k,B,k,0,t-k,0,t-k,B,k,0,t-k,B,k,B]:u?[0,0,C,0,C*q,A*q,0,0,C*q,A*q,0,A*q,0,0,C,0,C,A,0,0,C,A,0,A,0,0,C,0,C*q,A*q,0,0,C*q,A*q,0,A*q,0,0,C*q,0,C*q,A*q,0,0,C*q,A*q,0,A*q,C*q,A*q,0,A*q,0,0,C*q,A*q,0,0,C,0,C,0,C*q,A*q,0,A*q,C,0,0,A*q,0,0]:[0,0,t,0,t,n,0,0,t,n,0,n,0,0,B,0,B,n,0,0,B,n,0,n,0,0,B,0,B,n,0,0,B,n,0, n,0,0,B,0,B,t,0,0,B,t,0,t,B,n,0,n,0,0,B,n,0,0,B,0,t,0,t,n,0,n,t,0,0,n,0,0]);S.setAttribute("position",new THREE.BufferAttribute(r,3));S.setAttribute("uv",new THREE.BufferAttribute(u,2,!0));S.computeVertexNormals();S.computeBoundingBox();u=F.j;L&&(u=[L.j,F.j],S.clearGroups(),S.addGroup(0,6,0),S.addGroup(6,r.length-6,1));F=new THREE.Mesh(S,u);F.castShadow=F.receiveShadow=!0;if(!l&&!e)for(L=7.9;L+7.9{const F=v===p&&l;var L=K.A&&v{e[p]={B:0,v:0};return e},{});if(!W[K.pattern])throw"Unbekanntes Muster "+K.pattern;W[K.pattern].l(function(e){let p;const v=[60,60,60];v[e.d]=e.s;p=sa(v[0],v[2],v[1],e.F,2,e.H,e.G);b.add(p);p.translateX(e.x);p.translateY(e.y);p.translateZ(-e.z);return v[e.d]},K);d.add(b);var g=(new THREE.Box3).setFromObject(b);const l=new THREE.Vector3;var f=new THREE.Vector3;g.getSize(l);g.getCenter(f);b.translateX(-f.x);b.translateZ(-f.z); if(N.castShadow){g=l.x;f=Math.max(l.z,l.y);const e=1.4241*Math.max(l.x,l.y,l.z)/2;N.shadow.camera.left=-1.4142*g;N.shadow.camera.right=1.4142*g;N.shadow.camera.top=1.4142*f;N.shadow.camera.bottom=-1.4142*f;N.shadow.camera.far=948.52+e;N.shadow.camera.updateProjectionMatrix()}if(Z)try{const e=new THREE.BufferGeometry,p=Math.max(l.x,l.z),v=Math.max(1E3,(l.x+p)/2+200),u=Math.max(1E3,(l.z+p)/2+200),q=v/Z.image.naturalWidth,F=u/Z.image.naturalHeight;e.setAttribute("position",new THREE.BufferAttribute(new Float32Array([-v/ 2,-.5,-u/2,v/2,-.5,u/2,v/2,-.5,-u/2,-v/2,-.5,-u/2,-v/2,-.5,u/2,v/2,-.5,u/2]),3));e.setAttribute("uv",new THREE.BufferAttribute(new Float32Array([0,F,q,0,q,F,0,F,0,0,q,0]),2));e.setAttribute("normal",new THREE.BufferAttribute(new Float32Array([0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0]),3,!0));const L=new THREE.Mesh(e,new THREE.MeshPhongMaterial({color:11184810,map:Z,side:THREE.DoubleSide}));L.receiveShadow=!0;Z.wrapS=Z.wrapT=THREE.RepeatWrapping;d.add(L)}catch(e){console.error("Failed to make grid object:", e)}if(d=R("count-table")){const e=R("toggle-endstones"),p=d.firstElementChild;p.innerHTML="Betonbl\u00f6cke";ja.forEach((v,u)=>{const q=K.u[v],F=q.B+q.v;let L=document.createElement("tr"),r=document.createElement("th");r.textContent=0===F?"\u00a0":v.replaceAll("x","\u00d7");L.appendChild(r);r=document.createElement("th");r.textContent=0===F?"\u00a0":"cm";L.appendChild(r);v=document.createElement("td");v.textContent=0===q.B?"\u00a0":q.B;L.appendChild(v); v=document.createElement("td");v.textContent=0===q.v?"\u00a0":q.v;L.appendChild(v);0===u&&(r=document.createElement("th"),r.setAttribute("rowspan",ja.length),r.appendChild(e),L.appendChild(r));p.appendChild(L)})}}function Ka(){const d=ka.children[0].children.map(g=>{const l=(new THREE.Box3).setFromObject(g,!0);--l.max.x;l.max.y-=30;--l.max.z;l.block=g;return l}),b=[];for(let g=0;gda?(ma=3,da=100):(da=(da+d)/2,100Date.now()-oa)ba=!0,requestAnimationFrame(ya)}else ba=!1}function pa(){oa=Date.now();ba||(ba=!0,requestAnimationFrame(ya))}function xa(){let d=za.firstElementChild;var b=za.getBoundingClientRect();d.width=b.width;d.height=b.height;X=new THREE.WebGLRenderer({canvas:d,antialias:!0});X.shadowMap.enabled=!0;X.shadowMap.type=THREE.PCFSoftShadowMap; V?(V.aspect=d.width/d.height,V.updateProjectionMatrix()):(b=1.4241*25050/2,V=new THREE.PerspectiveCamera(60,d.width/d.height,.1,2*(b+150)),V.position.set(400,K.view.elevation,K.view.d),V.lookAt(0,K.view.elevation,0),O=new THREE.OrbitControls(V,X.domElement),O.maxPolarAngle=Math.PI/2,O.maxDistance=b+100,O.enableDamping=!0,O.target=new THREE.Vector3(0,K.view.elevation,0),O.addEventListener("change",pa),O.addEventListener("start",pa));X.setSize(d.width,d.height)}function Aa(){R("display").textContent= "";T=V=X=null;R("pattern-controls").innerHTML="";const d=R("general-controls");d.innerHTML="";for(let b=1;bBa(b));const l=document.createElement("img");l.setAttribute("src",W[b].icon);g.appendChild(l);d.appendChild(g)}K= JSON.parse(La)}function Ma(d){K[d.target.name]=d.target.checked;aa(0)}function Ca(d,b,g){Array.from(Array.from((d||document).querySelectorAll("[name]"))).forEach(l=>{const f=l.getAttribute("name");b.controls[f]=l;l.value=g[f]+Number(l.dataset.offset||0);l.addEventListener("change",Na)})}function Ba(d){if(!W[d])throw"Unbekanntes Muster "+d;K.pattern=d;const b=K.parameters=JSON.parse(JSON.stringify(Oa[d])),g=R("pattern-controls");W[d].m(g);Ca(g,W[d],b);R("general-controls").innerHTML="
"; d=(document||document).querySelector("#toggle-endstones input");d.addEventListener("change",Ma);d.checked=K.endstones;R("display").innerHTML="";ua();la();pa()}function Na(d){d=d.target;if("endstones"!==d.name){const b=K.parameters;switch(d.type){case "checkbox":b[d.name]=d.checked;break;case "number":let g=Number(d.value);d.step&&(g=Math.round(g/d.step)*d.step);g=Math.min(d.max,Math.max(d.min,g));g!=d.value&&(d.value= g);b[d.name]=g-Number(d.dataset.offset||0);break;default:console.error("Unhandled input type",d.type,d)}}aa(0)}function Da(){T&&(xa(),la())}const Pa=ea["email-address"],Qa=ea["email-subject"],Ra=ea["email-template"],Oa=ea["initial-sizes"],fa={J:{texture:"images/concrete_wall_008_diff_4k.jpg",scale:.015,shininess:10,color:16777215},K:{texture:"images/concrete_wall_008_diff_4k.jpg",scale:.015,bumpMap:"images/concrete_wall_008_diff_4k-bumpmap.png",bumpScale:.25,shininess:10,color:16777215}},ja=["60x60x60", "60x60x90","60x60x150"],W=[{icon:"",controls:{},m:d=>{d.innerHTML=""},l:(d,b)=>{Q([[{x:0,y:0,z:0,d:0,s:60}],[]],1,0,b.endstones,d)}},{icon:"images/pattern-wall-128.png",controls:{},m:d=>{d.textContent="";d.appendChild(P("length",1,"L\u00e4nge ",180,30,25050,0,"cm"));d.appendChild(P("height",1,"H\u00f6he ",60,60,1020,0,"cm"))},l:(d,b)=>{const g=b.parameters,l=U(g["length.0"],0,O);Q(l,Math.round(g["height.0"]/60),0,b.endstones,d)}}, {icon:"images/pattern-corner-left-128.png",controls:{},m:d=>{d.textContent="";d.appendChild(P("length",1,"L\u00e4nge ",90,30,25050,-60,"cm"));d.appendChild(P("depth",1,"Tiefe ",90,30,2040,-60,"cm"));d.appendChild(P("height",1,"H\u00f6he ",60,60,1020,0,"cm"));let b=document.createElement("div");b.setAttribute("id","size-display");d.appendChild(b)},l:(d,b)=>{const g=b.parameters;let l=ta(g["length.0"], 0,O);Q(l,Math.round(g["height.0"]/60),0,b.endstones,d);l=Y(g["depth.0"],2,O);l.forEach(f=>f.forEach(e=>{e.z-=g["depth.0"]-60}));Q(l,Math.round(g["height.0"]/60),1,b.endstones,d);if(d=R("size-display"))d.innerHTML="Aussenmasse "+g["length.0"]+"\u00d7"+g["depth.0"]+"\u00d7"+g["height.0"]+" cm"}},{icon:"images/pattern-corner-right-128.png",controls:{},m:d=>{d.textContent="";d.appendChild(P("length",1,"L\u00e4nge ",90,30,25050,-60,"cm"));d.appendChild(P("depth", 1,"Tiefe ",90,30,2040,-60,"cm"));d.appendChild(P("height",1,"H\u00f6he ",60,60,1020,0,"cm"));let b=document.createElement("div");b.setAttribute("id","size-display");d.appendChild(b)},l:(d,b)=>{const g=b.parameters;let l=Y(g["length.0"],0,O);Q(l,Math.round(g["height.0"]/60),0,b.endstones,d);l=Y(g["depth.0"],2,O);l.forEach(f=>f.forEach(e=>{e.x+=g["length.0"]-60;e.z-=g["depth.0"]-60}));Q(l,Math.round(g["height.0"]/60),1,b.endstones, d);if(d=R("size-display"))d.innerHTML="Aussenmasse "+g["length.0"]+"\u00d7"+g["depth.0"]+"\u00d7"+g["height.0"]+" cm"}},{icon:"images/pattern-corner-both-128.png",controls:{},m:d=>{d.textContent="";d.appendChild(P("length",1,"Abstand ",30,30,25050,-120,"cm"));d.appendChild(P("depth",1,"Tiefe ",90,30,2040,-60,"cm"));d.appendChild(P("height",1,"H\u00f6he ",60,60,1020,0,"cm")); let b=document.createElement("div");b.setAttribute("id","size-display");d.appendChild(b)},l:(d,b)=>{const g=b.parameters;var l=ia(g["length.0"],0,O),f=Q(l,Math.round(g["height.0"]/60),0,b.endstones,d);l=0p.forEach(v=>{v.z-=g["depth.0"]-60}));Q(e,Math.round(g["height.0"]/60),l?1:0,b.endstones,d);e.forEach(p=>p.forEach(v=>{v.x+=g["length.0"]-60}));Q(e,Math.round(g["height.0"]/60),f?1:0,b.endstones,d);if(d=R("size-display"))d.innerHTML= "Aussenmasse "+g["length.0"]+"\u00d7"+g["depth.0"]+"\u00d7"+g["height.0"]+" cm"}},{icon:"images/pattern-box-128.png",controls:{},m:d=>{d.textContent="";d.appendChild(P("length",1,"Abstand ",30,30,25050,-120,"cm"));d.appendChild(P("depth",1,"Tiefe ",30,30,2040,-120,"cm"));d.appendChild(P("height",1,"H\u00f6he ",60,60,1020,0,"cm"));let b=document.createElement("div");b.setAttribute("id", "size-display");d.appendChild(b)},l:(d,b)=>{const g=b.parameters,l=ia(g["length.0"],0,O);l.forEach(q=>q.forEach(F=>{F.z-=60}));let f=Q(l,Math.round(g["height.0"]/60),0,b.endstones,d);const e=0q.forEach(F=>{F.z-=60}));f=Q(v,Math.round(g["height.0"]/60),e?0:1,b.endstones,d);const u=f.end[2]+60q.forEach(F=>{F.x+=g["length.0"]-60}));f=Q(v,Math.round(g["height.0"]/60),p?0:1,b.endstones,d);l.forEach(q=> q.forEach(F=>{F.z+=g["depth.0"]-60}));Q(l,Math.round(g["height.0"]/60),u===e?1:0,b.endstones,d);if(d=R("size-display"))d.innerHTML="Aussenmasse "+g["length.0"]+"\u00d7"+g["depth.0"]+"\u00d7"+g["height.0"]+" cm"}},{icon:"images/pattern-comb-128.png",controls:{},m:d=>{function b(f,e){d.appendChild(P("height-back",1,"H\u00f6he R\u00fcckwand ",60,60,1020,0,"cm"));d.lastChild.style.display="inline-block";d.appendChild(P("length",f,"Abstand ", 30,30,2040,-60,"cm"));d.appendChild(P("height",1+f,"H\u00f6he ",60,60,1020,0,"cm"));d.appendChild(P("depth",1+f,"Tiefe ",150,30,2040,-60,"cm"));d.appendChild(e);f=document.createElement("div");f.setAttribute("id","size-display");d.appendChild(f)}const g=K.parameters;d.innerHTML="";let l=document.createElement("label");l.innerHTML=" Abteilungen"; l.style.padding="0";(l||document).querySelector("input").addEventListener("change",f=>{f=f.target;d.innerHTML="";var e=g.divisions;let p=Number(f.value),v=g["length."+(e-1)]||300;for(var u=e;u{var g=b.parameters;const l= g.divisions;let f=0;const e=Array(l),p=[0];for(var v=0;vm-A);for(g=1;gE.forEach(D=>{D.x+=q;D.y+=A}));n=Q(G,(C-A)/60,v+(n?1:0),b.endstones&&C===g,d);L=n.start[0]>q+(L?0:30);k=n.end[0]E.forEach(D=>{D.x+=q;D.y+= A;D.z-=r.depth-60})),Q(G,(Math.min(C,r.height)-A)/60,L?1:0,b.endstones&&r.height<=C,d));B&&t&&(G=Y(H.D,2,O),G.forEach(E=>E.forEach(D=>{D.x+=F-60;D.y+=A;D.z-=H.D-60})),Q(G,(Math.min(C,H.C)-A)/60,k?1:0,b.endstones&&r.C<=C,d));r=B?null:e[J+1];q=F-60;L=!1;u=!0}}}d=e.reduce((m,A)=>m+A.length,60);if(b=R("size-display"))b.innerHTML="Aussenmasse "+d+"\u00d7"+f+"\u00d7"+g+" cm"}}],za=R("display");let K={view:{elevation:170,d:800},A:!1,S:.1,pattern:null,parameters:{},endstones:!1};const ca= {};let wa=null,T=null,ka=new THREE.Group,X=null,V=null,N=null,O=null,Z=null,da=0,ma=4,ba=!1,oa=0;const La=JSON.stringify(K);na.addEventListener("resize",Da);Aa();const qa=new THREE.TextureLoader;Object.keys(fa).forEach(d=>{let b=fa[d];!b.j&&b.texture&&(d=b.texture,void 0===b.color&&(b.color=13421772),b.j=new THREE.MeshPhongMaterial({color:b.color}),qa.load(d,g=>{g.wrapS=THREE.RepeatWrapping;g.wrapT=THREE.RepeatWrapping;b.N=b.scale/(g.image.naturalWidth/g.image.naturalHeight);b.O=b.scale;b.bumpMap? qa.load(b.bumpMap,l=>{b.j=new THREE.MeshPhongMaterial({shininess:b.shininess||30,color:b.color,map:g});b.j.bumpMap=l;b.j.bumpScale=b.bumpScale;ra();aa(250)}):(b.j=new THREE.MeshPhongMaterial({shininess:b.shininess||30,color:b.color,map:g}),ra(),aa(250))}))});qa.load("images/grid.png",d=>{Z=d;aa(250)});document.location.search.replace(/[?&]Muster=([0-9]+)/,(d,b)=>{Ba(Number(b))});na.resetApplication=Aa;na.sendEmail=function(){const d=[];Ra.forEach(l=>{"[Mengen]"!==l?d.push(l):ja.forEach(f=>{const e= K.u[f];[e.B,e.v].forEach((p,v)=>{p&&d.push(f.replace(/x([0-9]{2})$/,"x $1").replaceAll("x","\u00d7")+" cm: "+p+(1