<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="M](yOm(feT@k9QK.n@v7">points</variable>
<variable id="!^ry)Mtf2A_wQ[oM?wx.">bezierWires</variable>
<variable id="QmQ@5]/bDkg`8DLLFwXD">bezierWires2</variable>
<variable id="qHg`tK__]aWKK;Qu8uF{">i</variable>
<variable id="I|K3`$`#LIcG(|Xc*T4p">pt1</variable>
<variable id="kT0|~J1u{kj9Zu=Gf0LN">result</variable>
<variable id="xb@=67OJK[buXgf0U`d*">pt2</variable>
<variable id=";26d.0Q%g#S0pX9J4qNA">beams</variable>
<variable id="yDIeg~YQ+T~)3(;rIl_R">pt3</variable>
<variable id="6GMLk1j*Mfm1}|iEKA~]">j</variable>
<variable id="fp|uM9i5SZ6xwdHztTQk">pt4</variable>
<variable id="=`;k#@kQ/DRviI:CeHy!">moveUp</variable>
<variable id="7x2%ou]1RFCN,HGY(zAl">loft</variable>
<variable id="A5|v{1pYTjBamm;+8`zE">movedDown</variable>
<variable id="[qryOMT@]MUgvKXHoX_[">glass</variable>
<variable id="fir6cZF?*+beLW?a+S%(">count</variable>
<variable id="a)@j/wuVX;Kjz`hUN@v3">step</variable>
<variable id="HBlT.Z~-t4:47ci~V#GD">glassMesh</variable>
<variable id="2.MO!J3aRXA8{A5!^f75">beamsMeshes</variable>
<variable id="TMN61K8!psq(*A(b?Mu#">timeElapsedFromPreviousFrame</variable>
<variable id="S_m6pRrH@54G;7KsF,/D">k</variable>
</variables>
<block type="bitbybit.babylon.scene.drawPointLightNoReturn" id="HVu*K~Ffu/PAK#$;}TpA" x="-3093" y="535">
<value name="Position">
<block type="bitbybit.point.pointXYZ" id="=nf/@Rk7QhF%klM{AeAW">
<value name="X">
<block type="math_number" id="AvSo[h^VmOXGf7Yl-qfZ">
<field name="NUM">5</field>
</block>
</value>
<value name="Y">
<block type="math_number" id=",e3wX7:H4upY@KxL(hy@">
<field name="NUM">100</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="9X}rt5EHw-A2om(XYP`1">
<field name="NUM">5</field>
</block>
</value>
</block>
</value>
<value name="Intensity">
<block type="math_number" id=";6:D?o!:R#lzsk;nC}Go">
<field name="NUM">4000</field>
</block>
</value>
<value name="Diffuse">
<block type="colour_picker" id="y]S]26WI?^69cFv*[%+/">
<field name="COLOUR">#ffffff</field>
</block>
</value>
<value name="Specular">
<block type="colour_picker" id="OMe]mG?6g3bxwj0eK;BX">
<field name="COLOUR">#ffffff</field>
</block>
</value>
<value name="Radius">
<block type="math_number" id="[[S%4hDxP|Rx6v0l_cLw">
<field name="NUM">0.05</field>
</block>
</value>
<value name="ShadowGeneratorMapSize">
<block type="math_number" id="V.@rJnehc3P5YT~m)=1f">
<field name="NUM">512</field>
</block>
</value>
<value name="EnableShadows">
<block type="logic_boolean" id="3k|q+5n@0Z6EH(DZFhJ6">
<field name="BOOL">TRUE</field>
</block>
</value>
<value name="ShadowDarkness">
<block type="math_number" id="]uW6|`B0U?}Kb.mO_Rgu">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="bitbybit.babylon.scene.adjustActiveArcRotateCamera" id="*vD^sO37fRlmb,*lG%,`">
<value name="Position">
<block type="bitbybit.point.pointXYZ" id="2Y`QK~$YVh=r4eu#h(D)">
<value name="X">
<block type="math_number" id="A_7gG,lt0NCy`np)7E_R">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="hD(C=nI_vas97zfdZn-?">
<field name="NUM">100</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="aD@n4D9iUr3lBJrd;qbg">
<field name="NUM">180</field>
</block>
</value>
</block>
</value>
<value name="LookAt">
<block type="bitbybit.point.pointXYZ" id=")[vImdow!=,$Yh{,hf{C">
<value name="X">
<block type="math_number" id="~d;aiod6X%6[Pvd*^Tbi">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="IQzzZ@D:,Xw]6%t{6nEg">
<field name="NUM">0</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="zD@4$wEN+9Ajtn;ph4Lo">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<value name="MaxZ">
<block type="math_number" id="Udut{|ED,_([76{uo[@~">
<field name="NUM">10000</field>
</block>
</value>
<value name="PanningSensibility">
<block type="math_number" id="Zs.OMpVZvaCO;sAEZMsc">
<field name="NUM">1000</field>
</block>
</value>
<value name="WheelPrecision">
<block type="math_number" id="8:b.OVuacx5_l6W7y60[">
<field name="NUM">3</field>
</block>
</value>
<next>
<block type="variables_set" id="T*JraYz/.Bqub2sCz5*?">
<field name="VAR" id="M](yOm(feT@k9QK.n@v7">points</field>
<value name="VALUE">
<block type="lists_create_with" id="wKU8==iV,S7cT,dBc{Mp">
<mutation items="0">
</mutation>
</block>
</value>
<next>
<block type="variables_set" id="liyma2[sZJL3n+=(zi+:">
<field name="VAR" id="!^ry)Mtf2A_wQ[oM?wx.">bezierWires</field>
<value name="VALUE">
<block type="lists_create_with" id="Wx1U]1-=l_;k$jRdnnD}">
<mutation items="0">
</mutation>
</block>
</value>
<next>
<block type="variables_set" id="DuMG;XlhMX;]fQ+B!~Cr">
<field name="VAR" id="QmQ@5]/bDkg`8DLLFwXD">bezierWires2</field>
<value name="VALUE">
<block type="lists_create_with" id="dhbZALa*o}F$?=xMmz@]">
<mutation items="0">
</mutation>
</block>
</value>
<next>
<block type="controls_for" id="b673GnoR,x~)tGeST[5X">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
<value name="FROM">
<block type="math_number" id="/n-?=XWo%YVs1]v?x?$D">
<field name="NUM">10</field>
</block>
</value>
<value name="TO">
<block type="math_number" id="y(dHY(WqsO.b.@Ai0jH5">
<field name="NUM">40</field>
</block>
</value>
<value name="BY">
<block type="math_number" id="?H/O[2AX?:2(r(uA#m_6">
<field name="NUM">1</field>
</block>
</value>
<statement name="DO">
<block type="variables_set" id="Q8ffY3Q@,mFW-:_YtrZ4">
<field name="VAR" id="I|K3`$`#LIcG(|Xc*T4p">pt1</field>
<value name="VALUE">
<block type="bitbybit.point.transformPoint" id="qefaorTmP=i8SUg)J4(~">
<value name="Point">
<block type="bitbybit.point.pointXYZ" id="QnKZ`)UIjw||f~{%@%kM">
<value name="X">
<block type="math_arithmetic" id="]eR_qJJp9]Ha8vm;~S-x">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id=":rmv`ML@JISKJmZy:bMf">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="IHlG[E3+i5gAstFC2Dem">
<field name="NUM">0.3</field>
</block>
</value>
</block>
</value>
<value name="Y">
<block type="math_arithmetic" id="!:UO4l$^BX5aQXCBb@|~">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id="A7;B/G6EFh:vLSPR,C:a">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_arithmetic" id="qKSe`AF7qhTP15dvlem:">
<field name="OP">DIVIDE</field>
<value name="A">
<block type="variables_get" id="0x;2A3u.lCOwgRKA2F,5">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="PNRH3L?q0~;e;d58]tZ*">
<field name="NUM">20</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="Z">
<block type="math_arithmetic" id="D,)rpZ}+NdDO2AKKLisU">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id="CA*G`HS@_epP,)%^zM8b">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="9p?yCg#3_5[Seajg+OpA">
<field name="NUM">0.1</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="Transformation">
<block type="bitbybit.babylon.transforms.rotationCenterY" id="EPdq:=85jU0BF7!G0TBh">
<value name="Angle">
<block type="math_arithmetic" id="r6k/phG,9($hD=QDRnGy">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="math_number" id="{D;yst(=.B,;.)/n*h_Z">
<field name="NUM">30</field>
</block>
</value>
<value name="B">
<block type="variables_get" id="m+4]MjV-{c6C7~)9|wqH">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
</block>
</value>
<value name="Center">
<block type="bitbybit.point.pointXYZ" id="rG:!VC75}DnK:e,?Sbpw">
<value name="X">
<block type="math_number" id="tJ/jywhy3UG[~?#2|kaM">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="t*TBrA=EY_o%ZLBMH`U.">
<field name="NUM">0</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="iKRUq3Lq_?/{=QZE=w/b">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="1M~Eo#Sc6@DE4WvoixBJ">
<field name="VAR" id="xb@=67OJK[buXgf0U`d*">pt2</field>
<value name="VALUE">
<block type="bitbybit.point.transformPoint" id=".@cinGt;U84JIt@Q3$.U">
<value name="Point">
<block type="bitbybit.point.pointXYZ" id="P#9Z)u8_nY(Ka]H*Els|">
<value name="X">
<block type="math_arithmetic" id="3q7(64NOR;Yc63K1mzB1">
<field name="OP">DIVIDE</field>
<value name="A">
<block type="variables_get" id="WQ*oMj^K/KXZg/X}zfo3">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="cRw4-`j8#__1zb3$eyaK">
<field name="NUM">2</field>
</block>
</value>
</block>
</value>
<value name="Y">
<block type="math_arithmetic" id=".$(NwytGr2%tzzzj5f$`">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id="LTHnIvpP%W.^OxG;ZP1(">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_arithmetic" id="0wPDAkGImv9w1tJ]}fGi">
<field name="OP">DIVIDE</field>
<value name="A">
<block type="variables_get" id="b#O|wEa6K3%tS2N93)g|">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="1q6,FSm+N7r3umK+$5@I">
<field name="NUM">70</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="Z">
<block type="math_arithmetic" id="k3/zW7?02]U%(PeR[LwY">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id="Wo.o1yUj1lB{8a?-AV!I">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="N22]QJe^dFtYKn-%SdRR">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="Transformation">
<block type="bitbybit.babylon.transforms.rotationCenterY" id=":ejHAafzC+`Owj%x*n|o">
<value name="Angle">
<block type="math_arithmetic" id="lJS^t~.{^=+kDE7$Y/;h">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="math_number" id="gR),I)(d|2md1l]R*DcD">
<field name="NUM">30</field>
</block>
</value>
<value name="B">
<block type="variables_get" id="b_bu)jMr+3x})z^2R-8c">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
</block>
</value>
<value name="Center">
<block type="bitbybit.point.pointXYZ" id="#0UflFbpxIEH.dB4y.A2">
<value name="X">
<block type="math_number" id="1?LY.nO=jh#gLQ4Xst1o">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="k|`[uE-okRoy9NHnJ9EB">
<field name="NUM">0</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="EU_^ttgsEyy=})|4u1n9">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="dEmH/e=[-Zq}r:n9=k[W">
<field name="VAR" id="yDIeg~YQ+T~)3(;rIl_R">pt3</field>
<value name="VALUE">
<block type="bitbybit.point.transformPoint" id="S5DcYA7#~8O3[6X/_p{z">
<value name="Point">
<block type="bitbybit.point.pointXYZ" id="2){?Npo2_/2IlcfDo`+J">
<value name="X">
<block type="math_arithmetic" id="Z;wLdFNG*j9)DflpBf3V">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id="M*nNMb{twTG-u79%4[Fk">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="6z%22/CmNBKXJ6==rRKM">
<field name="NUM">2</field>
</block>
</value>
</block>
</value>
<value name="Y">
<block type="math_arithmetic" id="eO;lAwt:(q{sRbHa(`}q">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id="rgt]LPGd[%qB-C|,a8`P">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_arithmetic" id="..;1SSq)3jzxLH=_aGJD">
<field name="OP">DIVIDE</field>
<value name="A">
<block type="variables_get" id="o.Iga9b:Frohy$@6#~TU">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id=".-+-jm@|{3(6$Pkio;*W">
<field name="NUM">50</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="Z">
<block type="math_arithmetic" id="-eIDu[)}t?#Zf7X?B!DL">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id="K;{@Q*-$K5W`4+1D/B(5">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="cpl|O;-(5J~VqSyCt_w3">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="Transformation">
<block type="bitbybit.babylon.transforms.rotationCenterY" id="-p`v]s7]hRYM]{}pDNX1">
<value name="Angle">
<block type="math_arithmetic" id="^R%bnCKyzP^rgs|(S`!^">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="math_number" id="lvAZLj?y5;XH[zo^$!=V">
<field name="NUM">30</field>
</block>
</value>
<value name="B">
<block type="variables_get" id="y7^0do[%Gen=^QV``{O2">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
</block>
</value>
<value name="Center">
<block type="bitbybit.point.pointXYZ" id="MD!Om.njM*|cSVtN.;,i">
<value name="X">
<block type="math_number" id=".T^Ijq|0Ccph0B@eS+6)">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="O}j4]w{D+ty-MGbbv6QQ">
<field name="NUM">0</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="F6bjchgeeoDn;(gkGAZ1">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="}Di*fB%y/^Gf)ePCD(79">
<field name="VAR" id="fp|uM9i5SZ6xwdHztTQk">pt4</field>
<value name="VALUE">
<block type="bitbybit.point.transformPoint" id="CuD2cN(-|%hMCK^}I}J-">
<value name="Point">
<block type="bitbybit.point.pointXYZ" id="av)@HCu@Czd|WA}`hcWr">
<value name="X">
<block type="math_arithmetic" id="b,u|pvVbhl!F_CI4$GTb">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id="D(C_BPVfO!FeB~{%b|ya">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="aE$xdEK1,Vqj-Mr0PB;j">
<field name="NUM">2</field>
</block>
</value>
</block>
</value>
<value name="Y">
<block type="math_number" id="BaYquK7zj2DQ,LU?:!e$">
<field name="NUM">0</field>
</block>
</value>
<value name="Z">
<block type="math_arithmetic" id="PeueAl#ou~R4({}%6AOf">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="variables_get" id=":=wZ~GWyw2hKyTXv]xus">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
<value name="B">
<block type="math_number" id="H(C|J/l]ul[Zmvb!KVPY">
<field name="NUM">1.5</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="Transformation">
<block type="bitbybit.babylon.transforms.rotationCenterY" id="c.tB[rZOL+zS(,4wzRJx">
<value name="Angle">
<block type="math_arithmetic" id="VF*FG3prp:RvcG3H?!IO">
<field name="OP">MULTIPLY</field>
<value name="A">
<block type="math_number" id="mOL})Hh}IFH1(rP0r_;*">
<field name="NUM">30</field>
</block>
</value>
<value name="B">
<block type="variables_get" id="{ph$.ggs9?1z]z8+1PxW">
<field name="VAR" id="qHg`tK__]aWKK;Qu8uF{">i</field>
</block>
</value>
</block>
</value>
<value name="Center">
<block type="bitbybit.point.pointXYZ" id="5^([$rcetHv_n)A#.By!">
<value name="X">
<block type="math_number" id="-/_9kPwu,BGeia2[otXC">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="z7iMMKY%e7S^ZRu3CR-e">
<field name="NUM">0</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="gCwA4qKbPtY2o(VtA5D=">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="lists_setIndex" id=")md!QzM)p+qr~T}C^fWO">
<mutation at="false">
</mutation>
<field name="MODE">INSERT</field>
<field name="WHERE">LAST</field>
<value name="LIST">
<block type="variables_get" id="=]J*0B3V[~Ufq8[NwN2/">
<field name="VAR" id="!^ry)Mtf2A_wQ[oM?wx.">bezierWires</field>
</block>
</value>
<value name="TO">
<block type="bitbybit.occt.shapes.wire.createBSpline" id="jdsm#W2oGUEwo4]P$:vQ">
<value name="Points">
<block type="lists_create_with" id="WrO/f[qz1{-[8DNV4!6K">
<mutation items="4">
</mutation>
<value name="ADD0">
<block type="variables_get" id="34~j4^-d:YhGxxlEZ/.5">
<field name="VAR" id="I|K3`$`#LIcG(|Xc*T4p">pt1</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="w?X#+O`_l2qppp3ot14;">
<field name="VAR" id="xb@=67OJK[buXgf0U`d*">pt2</field>
</block>
</value>
<value name="ADD2">
<block type="variables_get" id="vN|jjByue?uzGWw?=8^;">
<field name="VAR" id="yDIeg~YQ+T~)3(;rIl_R">pt3</field>
</block>
</value>
<value name="ADD3">
<block type="variables_get" id="y=DGK36xkx.lP!w*n)3y">
<field name="VAR" id="fp|uM9i5SZ6xwdHztTQk">pt4</field>
</block>
</value>
</block>
</value>
<value name="Closed">
<block type="logic_boolean" id="d_pUyEX1`W$nl~QOXiRf">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
<next>
<block type="base_time_then" id="R=hIp`qKHdS`Y$jcF9o2">
<field name="Result" id="kT0|~J1u{kj9Zu=Gf0LN">result</field>
<value name="Promise">
<block type="variables_get" id="Vv@s-vb*UQO!-V#nQ83B">
<field name="VAR" id="!^ry)Mtf2A_wQ[oM?wx.">bezierWires</field>
</block>
</value>
<statement name="Then">
<block type="variables_set" id="^R^g(MKz3}++$th0zXDe">
<field name="VAR" id=";26d.0Q%g#S0pX9J4qNA">beams</field>
<value name="VALUE">
<block type="lists_create_with" id="J45/_]mn(ZL)D,9`ZN#I">
<mutation items="0">
</mutation>
</block>
</value>
<next>
<block type="controls_forEach" id="HtvbPy.n8b2[4Xalti=C">
<field name="VAR" id="6GMLk1j*Mfm1}|iEKA~]">j</field>
<value name="LIST">
<block type="variables_get" id="]Em0?2ZCCYNxj!laYdsa">
<field name="VAR" id="kT0|~J1u{kj9Zu=Gf0LN">result</field>
</block>
</value>
<statement name="DO">
<block type="variables_set" id="z(5/KqsR$TojwiEH^#Yx">
<field name="VAR" id="=`;k#@kQ/DRviI:CeHy!">moveUp</field>
<value name="VALUE">
<block type="bitbybit.occt.transforms.translate" id="va@w(W)8.~{rGU`(WGwK">
<value name="Shape">
<block type="variables_get" id="QCNKq)k%X3ahvrRr$MHd">
<field name="VAR" id="6GMLk1j*Mfm1}|iEKA~]">j</field>
</block>
</value>
<value name="Translation">
<block type="bitbybit.point.pointXYZ" id="G/4ViOG8OeoG-3u%3;2B">
<value name="X">
<block type="math_number" id="g;CF840yCu)hRoCCDy;!">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="nng}iBcCn9i-e5*|.pL*">
<field name="NUM">2</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="swQF]W~O2)=Q!i-~Y_oJ">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="o~(RIJlwL);9NZe!U`C^">
<field name="VAR" id="A5|v{1pYTjBamm;+8`zE">movedDown</field>
<value name="VALUE">
<block type="bitbybit.occt.transforms.translate" id="mitG]7_M?mGR,~3RtMK}">
<value name="Shape">
<block type="variables_get" id="2+CpSI-PVAeU~wP8HrLs">
<field name="VAR" id="6GMLk1j*Mfm1}|iEKA~]">j</field>
</block>
</value>
<value name="Translation">
<block type="bitbybit.point.pointXYZ" id="#,of(~WcHJ-@c/bo)_4C">
<value name="X">
<block type="math_number" id="FiKUME=?NQb#(gS,0qNr">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="7{(d#EO_!LQ7`PWWRyUH">
<field name="NUM">-2</field>
</block>
</value>
<value name="Z">
<block type="math_number" id=".J0itX(fpD+lWVs~B|5@">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="lists_setIndex" id="Pcq.zNOy[#9m[/DAzZ7)">
<mutation at="false">
</mutation>
<field name="MODE">INSERT</field>
<field name="WHERE">LAST</field>
<value name="LIST">
<block type="variables_get" id="4fbj:sVPz]Eip9{GXSm6">
<field name="VAR" id=";26d.0Q%g#S0pX9J4qNA">beams</field>
</block>
</value>
<value name="TO">
<block type="bitbybit.draw.drawAnyAsync" id="!*(?Z|Bc@}kXazz:ay3$">
<value name="Entity">
<block type="bitbybit.occt.operations.makeThickSolidSimple" id="q|QadBCYsq]bE=`h16lQ">
<value name="Shape">
<block type="bitbybit.occt.operations.loft" id="{Cg}MEa=qoGjZ.tw6V!;">
<value name="Shapes">
<block type="lists_create_with" id="pO(`PQaeLa_oP__L,?9x">
<mutation items="2">
</mutation>
<value name="ADD0">
<block type="variables_get" id="uHT;pe#8hrDfi8{|J:LR">
<field name="VAR" id="A5|v{1pYTjBamm;+8`zE">movedDown</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="P$1;C#2tnn?qO:^Z6HUa">
<field name="VAR" id="=`;k#@kQ/DRviI:CeHy!">moveUp</field>
</block>
</value>
</block>
</value>
<value name="MakeSolid">
<block type="logic_boolean" id="U6F%C_+8?6_wV2JAzi?F">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<value name="Offset">
<block type="math_number" id=")X,6qS1W1V*d[azgtQ=!">
<field name="NUM">-1.5</field>
</block>
</value>
</block>
</value>
<value name="Options">
<block type="bitbybit.draw.optionsOcctShape" id=",W0`~^Grj?EAowLV~mEc">
<value name="FaceOpacity">
<block type="math_number" id="ip$%a!p8am?KyA%*D=JP">
<field name="NUM">1</field>
</block>
</value>
<value name="EdgeOpacity">
<block type="math_number" id="(4s:/0OhI_w,S([$LHa:">
<field name="NUM">0.4</field>
</block>
</value>
<value name="EdgeColour">
<block type="colour_picker" id="vJze1g#n+iy5JgCyeyPR">
<field name="COLOUR">#ffffff</field>
</block>
</value>
<value name="FaceColour">
<block type="colour_picker" id="3$tzYoRr0[#Q(InVJ6YG">
<field name="COLOUR">#333333</field>
</block>
</value>
<value name="EdgeWidth">
<block type="math_number" id="*u8vs]2H@bO4FJeNwisW">
<field name="NUM">20</field>
</block>
</value>
<value name="DrawEdges">
<block type="logic_boolean" id="[IN:W`b=60;Olnm0?#C!">
<field name="BOOL">TRUE</field>
</block>
</value>
<value name="DrawFaces">
<block type="logic_boolean" id="Firc?/DXoq,5I#F|H_,x">
<field name="BOOL">TRUE</field>
</block>
</value>
<value name="Precision">
<block type="math_number" id="5ih+TC9hI(0F6p,|c}o+">
<field name="NUM">0.05</field>
</block>
</value>
<value name="DrawEdgeIndexes">
<block type="logic_boolean" id=".{Dh6.Dp6l#vfgluOH~x">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="EdgeIndexHeight">
<block type="math_number" id=":vrZ;D01OPVN5MZ*3%1-">
<field name="NUM">0.06</field>
</block>
</value>
<value name="EdgeIndexColour">
<block type="colour_picker" id="/s=l`svOZMV((@RT0yA_">
<field name="COLOUR">#bbbbff</field>
</block>
</value>
<value name="DrawFaceIndexes">
<block type="logic_boolean" id="4F.:MXtgV]M+Ed9kjac,">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="FaceIndexHeight">
<block type="math_number" id="/=D^*V,2;(y7;p;VV{@6">
<field name="NUM">0.06</field>
</block>
</value>
<value name="FaceIndexColour">
<block type="colour_picker" id="c?WZUzueF5A;jE(Qrv2x">
<field name="COLOUR">#0000ff</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</statement>
<next>
<block type="variables_set" id="=IV~coT-T!*;3j{$#^Mj">
<field name="VAR" id="7x2%ou]1RFCN,HGY(zAl">loft</field>
<value name="VALUE">
<block type="bitbybit.occt.operations.makeThickSolidSimple" id="%+AhK`AwE}.5Iqp5w2X=">
<value name="Shape">
<block type="bitbybit.occt.operations.loft" id="bTf[oRG^VnGO9Qrsf%Dx">
<value name="Shapes">
<block type="variables_get" id="~EB3XJ8vNa5#6|VkR35?">
<field name="VAR" id="kT0|~J1u{kj9Zu=Gf0LN">result</field>
</block>
</value>
<value name="MakeSolid">
<block type="logic_boolean" id="v|+$l/x9C![xtN.`zR1v">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<value name="Offset">
<block type="math_number" id="eB4Ds.pyqq`dDL+mfR0a">
<field name="NUM">0.3</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="oOy65)s)vE`G7_7Fr,.K">
<field name="VAR" id="[qryOMT@]MUgvKXHoX_[">glass</field>
<value name="VALUE">
<block type="bitbybit.draw.drawAnyAsync" id="9/^ic6kxX#YRuMfC{p=s">
<value name="Entity">
<block type="variables_get" id="E_u!o.;a_z|T)D2(A8W-">
<field name="VAR" id="7x2%ou]1RFCN,HGY(zAl">loft</field>
</block>
</value>
<value name="Options">
<block type="bitbybit.draw.optionsOcctShape" id="oW%g.XWMvaGY7`v;6Th*">
<value name="FaceOpacity">
<block type="math_number" id="!t6n]ml{+rc[%:o8A2h8">
<field name="NUM">0.9</field>
</block>
</value>
<value name="EdgeOpacity">
<block type="math_number" id="~%;c*C`H5]XKWNp9YIv*">
<field name="NUM">1</field>
</block>
</value>
<value name="EdgeColour">
<block type="colour_picker" id="3H~!*;%MgBwP]b06M)`j">
<field name="COLOUR">#000000</field>
</block>
</value>
<value name="FaceColour">
<block type="colour_picker" id="2lhR*bhzZ{hrmF7,$x7s">
<field name="COLOUR">#ff6600</field>
</block>
</value>
<value name="EdgeWidth">
<block type="math_number" id="K~b=Adz3UGLywwL`]lKu">
<field name="NUM">10</field>
</block>
</value>
<value name="DrawEdges">
<block type="logic_boolean" id="{.@g!*E_O[km-]WGx?5I">
<field name="BOOL">TRUE</field>
</block>
</value>
<value name="DrawFaces">
<block type="logic_boolean" id="TC4O$6^R?AwogwJ{0m;r">
<field name="BOOL">TRUE</field>
</block>
</value>
<value name="Precision">
<block type="math_number" id="`_`uuZle|]Tb_Y@%)Ahv">
<field name="NUM">0.1</field>
</block>
</value>
<value name="DrawEdgeIndexes">
<block type="logic_boolean" id="+oTRx90vVBvCkdx7$vh2">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="EdgeIndexHeight">
<block type="math_number" id="F0).M:z{*)UsC^7wSt5(">
<field name="NUM">0.06</field>
</block>
</value>
<value name="EdgeIndexColour">
<block type="colour_picker" id="TlN*7J8,FplFp1{UZo%S">
<field name="COLOUR">#bbbbff</field>
</block>
</value>
<value name="DrawFaceIndexes">
<block type="logic_boolean" id="`+gPMI%%vPbjpvwvs;!G">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="FaceIndexHeight">
<block type="math_number" id="YNYxU5nUd%a3wnykL?Qj">
<field name="NUM">0.06</field>
</block>
</value>
<value name="FaceIndexColour">
<block type="colour_picker" id="r$V{9]|]aR#uwDNxtZ#z">
<field name="COLOUR">#0000ff</field>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="`tNTXy)1)tbhhDF!%1sh">
<field name="VAR" id="fir6cZF?*+beLW?a+S%(">count</field>
<value name="VALUE">
<block type="math_number" id="nX]`Dy17i8:70@CdT2O{">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="variables_set" id="TMmsCH*IPTB5w^SJzzse">
<field name="VAR" id="a)@j/wuVX;Kjz`hUN@v3">step</field>
<value name="VALUE">
<block type="math_number" id=")wy4j}B3x/#Ud.$J:#`!">
<field name="NUM">0.001</field>
</block>
</value>
<next>
<block type="base_time_then" id="/RH(c~$l*HMAqJCSJ4eN">
<field name="Result" id="HBlT.Z~-t4:47ci~V#GD">glassMesh</field>
<value name="Promise">
<block type="variables_get" id="8B$Bb=^T`)V+|-xUAFy2">
<field name="VAR" id="[qryOMT@]MUgvKXHoX_[">glass</field>
</block>
</value>
<statement name="Then">
<block type="base_time_then" id="1pK2-bEdqy=~sq=]3)Wg">
<field name="Result" id="2.MO!J3aRXA8{A5!^f75">beamsMeshes</field>
<value name="Promise">
<block type="variables_get" id="4LlZGS%qdF+0Fxz{;M0F">
<field name="VAR" id=";26d.0Q%g#S0pX9J4qNA">beams</field>
</block>
</value>
<statement name="Then">
<block type="base_time_update" id="x:1(`G,%r)?-0+/n|{V+">
<field name="TimePassedMs" id="TMN61K8!psq(*A(b?Mu#">timeElapsedFromPreviousFrame</field>
<statement name="Update">
<block type="math_change" id="1ORbnqVyK*DR+=j@K8Q]">
<field name="VAR" id="fir6cZF?*+beLW?a+S%(">count</field>
<value name="DELTA">
<shadow type="math_number" id="JljGv;Gnm!KR.wUU|?:6">
<field name="NUM">0.001</field>
</shadow>
<block type="variables_get" id="H[E1f/Nk={cA$+Phl,@_">
<field name="VAR" id="a)@j/wuVX;Kjz`hUN@v3">step</field>
</block>
</value>
<next>
<block type="bitbybit.babylon.mesh.updateDrawn" id="zeWLnF%AV.%hB9ozpiD/">
<value name="BabylonMesh">
<block type="variables_get" id="qii7CRFe2C+*+s8kjATc">
<field name="VAR" id="HBlT.Z~-t4:47ci~V#GD">glassMesh</field>
</block>
</value>
<value name="Position">
<block type="bitbybit.point.pointXYZ" id="j394BHdK|??}D~`RXDyP">
<value name="X">
<block type="math_number" id="9cGB0FvY2e}*A0;K(NaM">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="Hvx]_jx#,+zlRiDm`.A2">
<field name="NUM">0</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="f#~v/,FSt#ydSWBh~,zM">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<value name="Rotation">
<block type="bitbybit.point.pointXYZ" id="MqH`QU6^uLdH$GeiM?=g">
<value name="X">
<block type="math_number" id=".R66wa2[[y1TA[zrW_*:">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="variables_get" id="MFo-cOLicdImvp:rdR,J">
<field name="VAR" id="fir6cZF?*+beLW?a+S%(">count</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="sI_;e$W}ZO7Wk,y,~Ne_">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<value name="Scaling">
<block type="bitbybit.point.pointXYZ" id="aIFwTb6T%bNbTGG:w#Lx">
<value name="X">
<block type="math_number" id="xtS#5ahILifAPh5=N24:">
<field name="NUM">1</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="bW8Oh}!52S#@z-ITHPAo">
<field name="NUM">1</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="J:VWtQ_#85M$i1!%kov?">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="Colours">
<block type="colour_picker" id="6+z6A%BJW6q)KvNKTy7w">
<field name="COLOUR">#ff6600</field>
</block>
</value>
<next>
<block type="controls_forEach" id="@xf}X|^2Lt5{?.#usov3">
<field name="VAR" id="S_m6pRrH@54G;7KsF,/D">k</field>
<value name="LIST">
<block type="variables_get" id="J_`R2J]{OSUHfT2tCE+2">
<field name="VAR" id="2.MO!J3aRXA8{A5!^f75">beamsMeshes</field>
</block>
</value>
<statement name="DO">
<block type="bitbybit.babylon.mesh.updateDrawn" id="8Rn1+C8tJYisg4/H5GV_">
<value name="BabylonMesh">
<block type="variables_get" id=":Rq-5A5)HPdY/,w-$qE-">
<field name="VAR" id="S_m6pRrH@54G;7KsF,/D">k</field>
</block>
</value>
<value name="Position">
<block type="bitbybit.point.pointXYZ" id="VTG*ktA,pO9VzvxY{,E=">
<value name="X">
<block type="math_number" id="E,lkj{EXHPU422phCqfp">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="*7xXFYeQ5eI$Lw0TF5jG">
<field name="NUM">0</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="W-=1RI357C`=ZBcu+m/]">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<value name="Rotation">
<block type="bitbybit.point.pointXYZ" id="MYkU3C?}RybN)zwbX5Qz">
<value name="X">
<block type="math_number" id="Z%;ST,Tn-7#XF:+e:TiO">
<field name="NUM">0</field>
</block>
</value>
<value name="Y">
<block type="variables_get" id="fn19?p/jL^MKh957rJM$">
<field name="VAR" id="fir6cZF?*+beLW?a+S%(">count</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="D)TX..4l`[gHe32EjU5o">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<value name="Scaling">
<block type="bitbybit.point.pointXYZ" id="gExzo?famA=q[#[!eTOE">
<value name="X">
<block type="math_number" id="mc)r@z|fWN38lR5Myfee">
<field name="NUM">1</field>
</block>
</value>
<value name="Y">
<block type="math_number" id="j9*x5YC{Td.;628q:QQU">
<field name="NUM">1</field>
</block>
</value>
<value name="Z">
<block type="math_number" id="?$4R7`BVj7Aj80u6e*o_">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="Colours">
<block type="colour_picker" id="C4;S=qefsh[p`*nO9y#!">
<field name="COLOUR">#333333</field>
</block>
</value>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</xml>