1 line
18 KiB
XML
1 line
18 KiB
XML
<xml version="Mixly 3.0 rc0" board="Python ESP32-C5@元控自立(SOWL)" shown="block"><block type="variables_set" id=".gS0;?0oERbb?}w9f+z!" x="-4262" y="-1482"><field name="VAR">电梯当前楼层</field><value name="VALUE"><block type="math_random" id="/AtMmjxGz=X-d:~Up*5{"><field name="TYPE">int</field><value name="FROM"><shadow type="math_number" id="9@t8P{zlHYxF)ast9e8J"><field name="NUM">1</field></shadow></value><value name="TO"><shadow type="math_number" id="wJm]XxPYL;2tyQsbr=3O"><field name="NUM">4</field></shadow></value></block></value><next><block type="variables_set" id="wwr;n5_2fs]!$[n805fW"><field name="VAR">用户所在楼层</field><value name="VALUE"><block type="math_random" id="-8=qF9p_vjWKCwIt95pe"><field name="TYPE">int</field><value name="FROM"><shadow type="math_number" id="}Q;yQyXCr$^GD-CocAXj"><field name="NUM">1</field></shadow></value><value name="TO"><shadow type="math_number" id="k9L5!^./4N!xIBN_?eOT"><field name="NUM">4</field></shadow></value></block></value><next><block type="variables_set" id="k//{3s2587dUqc1q(Npu"><field name="VAR">电梯状态显示</field><value name="VALUE"><block type="text" id="[ga3T^PG-9YH[UQP.+e{"><field name="TEXT">静止</field></block></value><next><block type="controls_whileUntil" id="H}kVJ=WC*BAnPyBGD}qO"><field name="MODE">WHILE</field><value name="BOOL"><shadow type="logic_boolean" id="z_MXe5Y(4iX5WT5F;[G4"><field name="BOOL">TRUE</field></shadow></value><statement name="DO"><block type="procedures_callnoreturn" id="|LMkfm?Rm/u?Gmj?2?!r"><mutation name="显示电梯状态"></mutation><next><block type="controls_if" id="~i-8ftP.**V$}VOTW6jq"><value name="IF0"><block type="logic_operation" id="vDCH}R12py`]yd@kRU5E"><field name="OP">OR</field><value name="A"><block type="sensor_mixgo_button_was_pressed" id="/}u^Ou0D[LC;H4e~[,vw"><value name="btn"><shadow type="pins_button" id="Tj+JTko/^UMpH(hV)CM!"><field name="PIN">B1key</field></shadow></value></block></value><value name="B"><block type="sensor_mixgo_button_was_pressed" id="]$1CfC77@AF4qlWzDTF;"><value name="btn"><shadow type="pins_button" id="24RxTb2{#h?7:3D:hGJv"><field name="PIN">B2key</field></shadow></value></block></value></block></value><statement name="DO0"><block type="variables_set" id=":Z3UY!b7_l[E2:v!3JWV"><field name="VAR">电梯状态显示</field><value name="VALUE"><block type="text" id="z!+}|iJ-3.HYg;JXb#TE"><field name="TEXT">运行</field></block></value></block></statement><next><block type="controls_if" id=",az(M3EO1.}BqHV@cKWv"><value name="IF0"><block type="logic_compare" id="hU^(QgqXw6zCaI25Fe5B"><field name="OP">NEQ</field><value name="A"><block type="variables_get" id="+CLQwK::w8WBoKWI(6S="><field name="VAR">电梯状态显示</field></block></value><value name="B"><block type="text" id="kP[`U5)9DZ8z.4)^MfZn"><field name="TEXT">静止</field></block></value></block></value><statement name="DO0"><block type="controls_if" id="nh4b}g{)k.b(!BeeS6!d"><mutation elseif="1" else="1"></mutation><value name="IF0"><block type="logic_compare" id="p::[1jN4^^::?J,=_0wa"><field name="OP">GT</field><value name="A"><block type="variables_get" id="fq6n@:es|qw)^}?k^G[:"><field name="VAR">用户所在楼层</field></block></value><value name="B"><block type="variables_get" id="!etpdpwMiA:@kYdiPvO#"><field name="VAR">电梯当前楼层</field></block></value></block></value><statement name="DO0"><block type="variables_set" id="GCL#:2=/PWBs[^*Z6)4*"><field name="VAR">电梯状态显示</field><value name="VALUE"><block type="text" id="qjo[$_w[7r~CS|lO6m_-"><field name="TEXT">上行</field></block></value><next><block type="math_selfcalcu" id="q!PX*~hmn!_O@s/b/5r$"><field name="OP">ADD</field><value name="A"><shadow type="variables_get" id="Gkj3~?`0.~i7[Ml_+/eJ"><field name="VAR">电梯当前楼层</field></shadow></value><value name="B"><shadow type="math_number" id="FWXM*-y@Y#zg=}yai}Ne"><field name="NUM">1</field></shadow></value><next><block type="controls_delay_new" id="c7$xI51TiummTRo;C^kE"><field name="Time">s</field><value name="DELAY_TIME"><shadow type="math_number" id="f.GqQ$R`//svs7^8HPhY"><field name="NUM">1</field></shadow></value></block></next></block></next></block></statement><value name="IF1"><block type="logic_compare" id="Ne{sxTHNtGJ:AcU*$22@"><field name="OP">LT</field><value name="A"><block type="variables_get" id="9e/F6=Ealeljh*Gx9go@"><field name="VAR">用户所在楼层</field></block></value><value name="B"><block type="variables_get" id="/as)DgrIczaEM~KSXDQp"><field name="VAR">电梯当前楼层</field></block></value></block></value><statement name="DO1"><block type="variables_set" id="^1_LtO$ui#hCM|dSK_5D"><field name="VAR">电梯状态显示</field><value name="VALUE"><block type="text" id="~r}ojm(~Sf~PkLc6$!46"><field name="TEXT">下行</field></block></value><next><block type="math_selfcalcu" id="I!5(O!W{r.Ba}#`8!RVy"><field name="OP">MINUS</field><value name="A"><shadow type="variables_get" id="?zS{}nL|pJq=OFf7l,8K"><field name="VAR">电梯当前楼层</field></shadow></value><value name="B"><shadow type="math_number" id="YvgrKRBw])c*+yVPMrGm"><field name="NUM">1</field></shadow></value><next><block type="controls_delay_new" id=")~;qH{jbae7(W/HoQ7h-"><field name="Time">s</field><value name="DELAY_TIME"><shadow type="math_number" id=")1D~XV;-9LmEi#|]f^(q"><field name="NUM">1</field></shadow></value></block></next></block></next></block></statement><statement name="ELSE"><block type="variables_set" id="[KjpM?,9[P2q3UtlUaM$"><field name="VAR">电梯状态显示</field><value name="VALUE"><block type="text" id="/VXi76d5H@_`6}4spt/E"><field name="TEXT">静止</field></block></value><next><block type="procedures_callnoreturn" id="a4ajGQ8.jKz{H9Akr8CP"><mutation name="开关门"></mutation><next><block type="variables_set" id="kt^j9?iG@$#Gjx_S_+dC"><field name="VAR">用户所在楼层</field><value name="VALUE"><block type="math_random" id="$RP|6y[K=xtK:@rKWS9?"><field name="TYPE">int</field><value name="FROM"><shadow type="math_number" id="I{bJbWGU_jO~HhBBQqG="><field name="NUM">1</field></shadow></value><value name="TO"><shadow type="math_number" id="[q0x.Z?a2uvyOG5TUTGA"><field name="NUM">4</field></shadow></value></block></value></block></next></block></next></block></statement></block></statement></block></next></block></next></block></statement></block></next></block></next></block></next></block><block type="procedures_defnoreturn" id="+dsZ2,Dmcv+@AjSvEt+m" x="-3605" y="-1447"><field name="NAME">显示电梯状态</field><statement name="STACK"><block type="display_clear" id="kF*Y)K(c#O|)S6OXEzf|"><value name="boolean"><shadow type="logic_boolean" id="F}5xRxjGKpYg_iGt!Gmc"><field name="BOOL">FALSE</field></shadow></value><next><block type="onboard_tft_show_image_or_string_delay" id=".RhFUO6faUYYU9V$zz8$"><field name="center">True</field><value name="data"><shadow type="text" id="i0vSkB{dpBu3A:u0ARbJ"><field name="TEXT">Mixly</field></shadow><block type="text_join" id="/iZ;2DvqvM(!x:60apyF"><value name="A"><shadow type="text" id="0=g?2xueChaw.PduJv)f"><field name="TEXT">电梯状态:</field></shadow></value><value name="B"><shadow type="text" id="kN`#5b~V[-HE_oF}^@d!"><field name="TEXT">Mixly</field></shadow><block type="variables_get" id="C$Oi)h2z)FJ5Dh4l5Eo3"><field name="VAR">电梯状态显示</field></block></value></block></value><value name="x"><shadow type="math_number" id="ej}dHAS4+0;OBgR,hA95"><field name="NUM">0</field></shadow></value><value name="y"><shadow type="math_number" id="G5ssVOnn.0bj,15#l@zv"><field name="NUM">10</field></shadow></value><value name="size"><shadow type="math_number" id="Z$N(BBR(qk}}3~{/du:{"><field name="NUM">1</field></shadow></value><value name="space"><shadow type="math_number" id=":{Nd;FA6W@z,vj^Y*::v"><field name="NUM">0</field></shadow></value><value name="VAR"><shadow type="tuple_create_with_text_return" id="U[yCG0VTO!4V9L1F}+;D"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="O?|_)Y,[!eiB`]q0=$.S"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="Z[(kWx}=M=WwFu90EI[9"><field name="BOOL">FALSE</field></shadow></value><next><block type="onboard_tft_show_image_or_string_delay" id="/ykeP|ej~#-/LOz$:F!-"><field name="center">True</field><value name="data"><shadow type="text" id="as5,ZPl,~in_!e/FXfw{"><field name="TEXT">Mixly</field></shadow><block type="text_join" id=")h,yr^)NxlnPHxVvi@)8"><value name="A"><shadow type="text" id="u2tir#QBm$5kzg]H52;i"><field name="TEXT">电梯楼层:</field></shadow></value><value name="B"><shadow type="text" id="5.*8LhTJF:(:LgiYN9QD"><field name="TEXT">Mixly</field></shadow><block type="number_to_text" id="v:LDQ2J49;]_XVC92~Fi"><value name="VAR"><shadow type="variables_get" id="iqQzMtiNZNIvuLHhPG:@"><field name="VAR">x</field></shadow><block type="variables_get" id="SRyUv-fNJ/Aq[O^y-SB!"><field name="VAR">电梯当前楼层</field></block></value></block></value></block></value><value name="x"><shadow type="math_number" id="H|[{fQJ;^:r@o81#56pp"><field name="NUM">0</field></shadow></value><value name="y"><shadow type="math_number" id="w;-$FIa]PfdQ/ESz#CIL"><field name="NUM">30</field></shadow></value><value name="size"><shadow type="math_number" id="dRMp!(8(qoFMt|9sM=!9"><field name="NUM">1</field></shadow></value><value name="space"><shadow type="math_number" id="o0v.hhss[hHd#zJ}R3;0"><field name="NUM">0</field></shadow></value><value name="VAR"><shadow type="tuple_create_with_text_return" id=":oamz,=+?k3W?~D-;m@1"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="eYQ7XxXBb;Lq6]ed2UfQ"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="ZYVU|F-Xv}.lf)U6+0UJ"><field name="BOOL">FALSE</field></shadow></value><next><block type="onboard_tft_show_image_or_string_delay" id="{^2k2BU$qUkl4!F#dcfS"><field name="center">True</field><value name="data"><shadow type="text" id="C/MPbbXp.pse@;FcAD+O"><field name="TEXT">Mixly</field></shadow><block type="text_join" id="jlmFX#m,daX1Q?1lTL6g"><value name="A"><shadow type="text" id="LBQ`u/Jle|xgCa{xPkFF"><field name="TEXT">用户楼层:</field></shadow></value><value name="B"><shadow type="text" id="*g`_J)=;5D|QM[2DH6A3"><field name="TEXT">Mixly</field></shadow><block type="number_to_text" id="jPSCfVd@@QYNGkx5NxeY"><value name="VAR"><shadow type="variables_get" id="d~CS$Fi#HP;]sQhcHR/!"><field name="VAR">x</field></shadow><block type="variables_get" id="A?}8zm*95si9#jm?P_E!"><field name="VAR">用户所在楼层</field></block></value></block></value></block></value><value name="x"><shadow type="math_number" id=",Hz3a5E;`z|tM#casOk)"><field name="NUM">0</field></shadow></value><value name="y"><shadow type="math_number" id=":#gDAhcDms}gL5][,f2_"><field name="NUM">50</field></shadow></value><value name="size"><shadow type="math_number" id="`:_^B`=xJ2Oe$jJ[Q|?N"><field name="NUM">1</field></shadow></value><value name="space"><shadow type="math_number" id="gQ_A}=UT;992L]wg6X?m"><field name="NUM">0</field></shadow></value><value name="VAR"><shadow type="tuple_create_with_text_return" id="/6*XD38]8vX`Xh(0!Q2v"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="d0GcG`sIz3!_beV]@k8M"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="w+uOzO3LPyW+5R[11r^Z"><field name="BOOL">FALSE</field></shadow></value><next><block type="onboard_tft_show_image_xy" id="ZgXJ1}+n8n7]9v=G1jJ:"><value name="data"><shadow type="pins_builtinimg" id="]]QRj}^5BJ98QqL!DY|S"><field name="PIN">object_picture.DOOR_CLOSE</field></shadow></value><value name="x"><shadow type="math_number" id="LGk0PqeP3SyMX#fparhH"><field name="NUM">30</field></shadow></value><value name="y"><shadow type="math_number" id="I6z|x(=H9*!1X^fXR=Fe"><field name="NUM">70</field></shadow></value><value name="size"><shadow type="math_number" id="3z7+Yb.R[|v9b}|LI}-+"><field name="NUM">1</field></shadow></value><value name="VAR"><shadow type="tuple_create_with_text_return" id="UPv;L3dG2UcqaaZM0R9!"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="qPb=i/fr6FOgK/AVpWx)"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="Ok]{~Kx*ckm[eIo2N{z)"><field name="BOOL">TRUE</field></shadow></value></block></next></block></next></block></next></block></next></block></statement></block><block type="procedures_defnoreturn" id="|f2olydrF9;--@IuKj-[" x="-3563" y="-1091"><field name="NAME">开关门</field><statement name="STACK"><block type="onboard_tft_show_image_xy" id="5?:~1s4[]1Hp5N]jTgwL"><value name="data"><shadow type="pins_builtinimg" id="[oSL:IZqlqJ[f0(7LH9^"><field name="PIN">object_picture.DOOR_OPENING</field></shadow></value><value name="x"><shadow type="math_number" id="7~wyr=@WR(U*GQsE=K_l"><field name="NUM">30</field></shadow></value><value name="y"><shadow type="math_number" id="[Gtu6MSiXCa_h^;t;yB#"><field name="NUM">70</field></shadow></value><value name="size"><shadow type="math_number" id="F,.whU].oM4cKwNO?+^c"><field name="NUM">1</field></shadow></value><value name="VAR"><shadow type="tuple_create_with_text_return" id="EV*VWg[QM3n|j/;flL-d"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="sl{I4[FPb+L}~aSwwZPS"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="X-}`qKK^az}XY3b4QDwD"><field name="BOOL">TRUE</field></shadow></value><next><block type="controls_delay_new" id="P0pv[d;,c.F+h(!sVM@_"><field name="Time">s</field><value name="DELAY_TIME"><shadow type="math_number" id="v3#bi*pH+-{+:rg)jEA~"><field name="NUM">0.3</field></shadow></value><next><block type="onboard_tft_show_image_xy" id="!?.pfPFX+e3Vm}08XOmC"><value name="data"><shadow type="pins_builtinimg" id="5!Q^uy!C)q2K(=lsbMu}"><field name="PIN">object_picture.DOOR_OPEN</field></shadow></value><value name="x"><shadow type="math_number" id=".TA|n=!O+!*Va2{[A!nx"><field name="NUM">30</field></shadow></value><value name="y"><shadow type="math_number" id="uBWu`g.ytbUFD~s+zMgi"><field name="NUM">70</field></shadow></value><value name="size"><shadow type="math_number" id="r0)xEhd2F6ou=IihmbVV"><field name="NUM">1</field></shadow></value><value name="VAR"><shadow type="tuple_create_with_text_return" id="?B=ZV1xb1S{wRX58(o(2"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="^=!AQj/?VR-|1.N8M`1p"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="jYTtv5ZAi+lTUzJ`q(?W"><field name="BOOL">TRUE</field></shadow></value><next><block type="controls_delay_new" id="Pa@N3CsBmNJt/v+7*Xpd"><field name="Time">s</field><value name="DELAY_TIME"><shadow type="math_number" id="HE4Rb(Cqp;f)#0W/izz{"><field name="NUM">1</field></shadow></value><next><block type="onboard_tft_show_image_xy" id="YJ+^R-3OoW}c(VuoB,+g"><value name="data"><shadow type="pins_builtinimg" id="gwcLE=5HVVIa?w(tDj(@"><field name="PIN">object_picture.DOOR_OPENING</field></shadow></value><value name="x"><shadow type="math_number" id="h6h.}[sYF$UTC};SI1$A"><field name="NUM">30</field></shadow></value><value name="y"><shadow type="math_number" id="jfv9lk2W1]!}ndy?fWcg"><field name="NUM">70</field></shadow></value><value name="size"><shadow type="math_number" id="ll`~#qDrs(Lbls{W5vV;"><field name="NUM">1</field></shadow></value><value name="VAR"><shadow type="tuple_create_with_text_return" id="qZwoOLJwX1XSZ]2L7SxV"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="}m8(6nIbG@woz`hjrSae"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="_FBy)x*VywgzaZrx4v7e"><field name="BOOL">TRUE</field></shadow></value><next><block type="controls_delay_new" id="l+nzswSnIDBXYfG$}fXo"><field name="Time">s</field><value name="DELAY_TIME"><shadow type="math_number" id="WxhPRx0Vk{/_?n:5S+Eu"><field name="NUM">0.3</field></shadow></value></block></next></block></next></block></next></block></next></block></next></block></statement></block></xml><config>{"BurnSpeed":{"key":"921600","label":"921600"}}</config><code>aW1wb3J0IHJhbmRvbQppbXBvcnQgbWl4Z29fc293bAppbXBvcnQgdGltZQpmcm9tIG1peGdvX3Nvd2wgaW1wb3J0IG9uYm9hcmRfdGZ0CmZyb20gb2JqZWN0X3BpY3R1cmUgaW1wb3J0IERPT1JfQ0xPU0UKZnJvbSBvYmplY3RfcGljdHVyZSBpbXBvcnQgRE9PUl9PUEVOSU5HCmZyb20gb2JqZWN0X3BpY3R1cmUgaW1wb3J0IERPT1JfT1BFTgoKCmRlZiDmmL7npLrnlLXmoq/nirbmgIEoKToKICAgIG9uYm9hcmRfdGZ0LmZpbGwoMCxzeW5jPUZhbHNlKQogICAgb25ib2FyZF90ZnQuc2hvd3MoJ+eUteair+eKtuaAge+8micgKyDnlLXmoq/nirbmgIHmmL7npLosIHg9MCwgeT0xMCwgc2l6ZT0xLCBzcGFjZT0wLCBjZW50ZXI9VHJ1ZSwgY29sb3I9MHhmZmZmLHN5bmM9RmFsc2UpCiAgICBvbmJvYXJkX3RmdC5zaG93cygn55S15qKv5qW85bGC77yaJyArIHN0cijnlLXmoq/lvZPliY3mpbzlsYIpLCB4PTAsIHk9MzAsIHNpemU9MSwgc3BhY2U9MCwgY2VudGVyPVRydWUsIGNvbG9yPTB4ZmZmZixzeW5jPUZhbHNlKQogICAgb25ib2FyZF90ZnQuc2hvd3MoJ+eUqOaIt+alvOWxgu+8micgKyBzdHIo55So5oi35omA5Zyo5qW85bGCKSwgeD0wLCB5PTUwLCBzaXplPTEsIHNwYWNlPTAsIGNlbnRlcj1UcnVlLCBjb2xvcj0weGZmZmYsc3luYz1GYWxzZSkKICAgIG9uYm9hcmRfdGZ0LmltYWdlKERPT1JfQ0xPU0UsIHg9MzAsIHk9NzAsIHNpemU9MSwgY29sb3I9MHhmZmZmLHN5bmM9VHJ1ZSkKCmRlZiDlvIDlhbPpl6goKToKICAgIG9uYm9hcmRfdGZ0LmltYWdlKERPT1JfT1BFTklORywgeD0zMCwgeT03MCwgc2l6ZT0xLCBjb2xvcj0weGZmZmYsc3luYz1UcnVlKQogICAgdGltZS5zbGVlcCgwLjMpCiAgICBvbmJvYXJkX3RmdC5pbWFnZShET09SX09QRU4sIHg9MzAsIHk9NzAsIHNpemU9MSwgY29sb3I9MHhmZmZmLHN5bmM9VHJ1ZSkKICAgIHRpbWUuc2xlZXAoMSkKICAgIG9uYm9hcmRfdGZ0LmltYWdlKERPT1JfT1BFTklORywgeD0zMCwgeT03MCwgc2l6ZT0xLCBjb2xvcj0weGZmZmYsc3luYz1UcnVlKQogICAgdGltZS5zbGVlcCgwLjMpCgoKCueUteair+W9k+WJjealvOWxgiA9IHJhbmRvbS5yYW5kaW50KDEsIDQpCueUqOaIt+aJgOWcqOalvOWxgiA9IHJhbmRvbS5yYW5kaW50KDEsIDQpCueUteair+eKtuaAgeaYvuekuiA9ICfpnZnmraInCndoaWxlIFRydWU6CiAgICDmmL7npLrnlLXmoq/nirbmgIEoKQogICAgaWYgbWl4Z29fc293bC5CMWtleS53YXNfcHJlc3NlZCgpIG9yIG1peGdvX3Nvd2wuQjJrZXkud2FzX3ByZXNzZWQoKToKICAgICAgICDnlLXmoq/nirbmgIHmmL7npLogPSAn6L+Q6KGMJwogICAgaWYg55S15qKv54q25oCB5pi+56S6ICE9ICfpnZnmraInOgogICAgICAgIGlmIOeUqOaIt+aJgOWcqOalvOWxgiA+IOeUteair+W9k+WJjealvOWxgjoKICAgICAgICAgICAg55S15qKv54q25oCB5pi+56S6ID0gJ+S4iuihjCcKICAgICAgICAgICAg55S15qKv5b2T5YmN5qW85bGCICs9IDEKICAgICAgICAgICAgdGltZS5zbGVlcCgxKQogICAgICAgIGVsaWYg55So5oi35omA5Zyo5qW85bGCIDwg55S15qKv5b2T5YmN5qW85bGCOgogICAgICAgICAgICDnlLXmoq/nirbmgIHmmL7npLogPSAn5LiL6KGMJwogICAgICAgICAgICDnlLXmoq/lvZPliY3mpbzlsYIgLT0gMQogICAgICAgICAgICB0aW1lLnNsZWVwKDEpCiAgICAgICAgZWxzZToKICAgICAgICAgICAg55S15qKv54q25oCB5pi+56S6ID0gJ+mdmeatoicKICAgICAgICAgICAg5byA5YWz6ZeoKCkKICAgICAgICAgICAg55So5oi35omA5Zyo5qW85bGCID0gcmFuZG9tLnJhbmRpbnQoMSwgNCkK</code>A0KQo=</code> |